๐Ÿ‘ฉ‍๐Ÿ’ป ๊ตญ๋น„ ์ˆ˜์—…/Spring

    0512 Spring framework Spring DI ์˜์กด์„ฑ ์ฃผ์ž…(์ƒ์„ฑ์ž, method) ์•ฝ๊ฒฐํ•ฉ (๋ฌธ์ž์—ด,์ •์ˆ˜,List,Map,) annotation๋ฐฉ์‹(Component, Autowired)

    *Spring framework - framework์€ ๋ฐ˜์กฐ๋ฆฝ์˜ ํ˜•ํƒœ์ด๋ฏ€๋กœ ์ตœ์†Œํ•œ์˜ ํ’ˆ์งˆ ๋ณด์žฅ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ - ๋กœ๋“œ ์กด์Šจ(Rod Johnson)์ด 2002๋…„์— ์‹œ์ž‘ํ•œ ํ”„๋กœ์ ํŠธ - ๊ฒฝ๋Ÿ‰ ํ”„๋ ˆ์ž„ ์›Œํฌ ( ๋น ๋ฆ„ ) - ๋ชจ๋“ˆ๋กœ ๊ฐœ๋ฐœํ•˜๊ธฐ ์ข‹์Œ (๊ฒฐํ•ฉ๋„๊ฐ€ ๋‚ฎ๊ณ , ์‘์ง‘๋„๊ฐ€ ๋†’์Œ) - ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€,์ œ๊ฑฐํ•˜๊ธฐ ์‰ฌ์›€ >์•ฝ๊ฒฐํ•ฉ - ๋ถ„์‚ฐ์ฒ˜๋ฆฌ(์—ฌ๋Ÿฌ ๋Œ€์˜ ์ปดํ“จํ„ฐ๊ฐ€ ์—…๋ฌด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ)๊ฐ€ ๋˜์ง€ ์•Š์Œ( web์œผ๋กœ ํšจ๊ณผ๋ฅผ ๋‚ผ ์ˆ˜ ์žˆ์Œ ) - POJO(Plain Old Java Object) ์ง€์› (์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” Java class๋งŒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ์‹ – ์‹คํ–‰ ๋ฐ ํ…Œ์ŠคํŠธ์˜ ์šฉ์ด์„ฑ) -DI๊ฐ€ ํ•ต์‹ฌ ( ์ด์ „ ๋ช… IoC (Inversion of Control) ์ œ์–ด ์—ญํ–‰ – ์•ฝ๊ฒฐํ•ฉ) :๊ฐ์ฒด ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ์ฒด ์•ˆ์—์„œ ๋งบ๋Š”..

    0511 Spring AJAX @ResponseBody ์˜ˆ์™ธ์ฒ˜๋ฆฌ (@ExceptionHandler ์‚ฌ์šฉ )

    *AJAX( Asynchronous JavaScript & XML) - ํ™”๋ฉด ์ผ๋ถ€๋ถ„์„ ๊ฐฑ์‹ ํ•˜์—ฌ ๋ณด์—ฌ์ค„ ๋•Œ @Controller public class AjaxController { @GetMapping("/ajax/emp_ajax.do") public String searchEmp(int deptno, Model model) { //service์ƒ์„ฑ AjaxService as = new AjaxService(); String jsonObj = as.empJsonObj(deptno); //๋ชจ๋ธ์— ๋‹ด๊ธฐ model.addAttribute("jsonObj", jsonObj); return "ajax/emp_ajax"; }//searchEmp ///////////////////////////////////////..

    0509 view JSP์˜ ๊ตฌ๋ถ„ Controller์—์„œ View๋กœ ๋ฐ์ดํ„ฐ ์ „์†ก(HttpServletRequest, Model, ModelAndView) redirect include jsp include do include ๊ด€๊ณ„์œ ์ง€(cookie,session) SessionAttributes FileUpload

    *view JSP์˜ ๊ตฌ๋ถ„ -/WEB-INF/vies ํด๋”์˜ ํ•˜์œ„ ํด๋”๋ฅผ ๋งŒ๋“ค์–ด ์„œ๋น„์Šค ์ˆ˜ํ–‰ (view๋ฅผ ์—…๋ฌด๋ณ„๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Œ) -DD๋ฅผ ์ˆ˜์ • (๋ชจ๋“  ์‘๋‹ต url์ด ๋ณ€๊ฒฝ๋จ - ๊ถŒ์žฅX) @RequestMapping("/๊ฒฝ๋กœ๋ช…/a.do") public String method( ) { return "view๋ช…"; } -return JSP๋ช… ์•ž์— ์ด๋™๊ฒฝ๋กœ๋ฅผ ๋ถ™์ž„ @RequestMapping("/๊ฒฝ๋กœ๋ช…/a.do") public String method( ) { return "๊ฒฝ๋กœ๋ช…/view๋ช…"; // ๊ฒฝ๋กœ๋ช…์ด prefix ๋’ค์— ๋ถ™์Œ >> /WEB-INF/views/๊ฒฝ๋กœ๋ช…/view๋ช….jsp } //views์— ํ•˜์œ„ ํด๋”๋ฅผ ๋งŒ๋“ค๊ณ  jsp๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ €์žฅํ•  ๋•Œ @GetMapping("/sub_folder...

    0508 Spring MVC Project ํŒŒ์ผ ๋ฐฐ์น˜ ํ•˜์œ„๋””๋ ‰ํ† ๋ฆฌ ์š”์ฒญ web parameter ์ฒ˜๋ฆฌ(RequestMapping - ๋‹จ์ผํ˜• VO) RequestParam Spring MVCํ•œ๊ธ€ ์ฒ˜๋ฆฌ(Filter) ํด๋ž˜์Šค๋‹ค์ด์–ด๊ทธ๋žจ(Controller, Service, DAO, JSP)

    *Spring MVC Project ํŒŒ์ผ ๋ฐฐ์น˜ src/main/java - Java package ํ˜น์€ Java class๋ฅผ ์ž‘์„ฑ (controller, dao ๋“ฑ) webapp - HTML,CSS,JS ์ž‘์„ฑ JSP : ์ง์ ‘ ํ˜ธ์ถœ๋  jsp ๋˜๋Š” redirect๋กœ ์š”์ฒญ๋  JSP views -JSP : ์ง์ ‘ ํ˜ธ์ถœ๋˜์ง€ ๋ง์•„์•ผ ํ•  JSP (forward๋กœ ์š”์ฒญ), ์—…๋ฌด์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค˜์•ผํ•  JSP *ํ•˜์œ„๋””๋ ‰ํ† ๋ฆฌ ์š”์ฒญ - package๋‚ด Controllerํด๋ž˜์Šค๊ฐ€ ์š”์ฒญ์„ ๋ฐ›์Œ (package๋ช…์ด๋‚˜ ํด๋ž˜์Šค๋ช…์€ ์š”์ฒญ URL์— ํฌํ•จ๋˜์ง€ ์•Š์Œ) => ์‹ค์ œ ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์•„๋‹˜ ์‚ฌ์šฉ๋ฒ•) //ํ•˜์œ„๊ฒฝ๋กœ: ๊ฐ€์ƒ์˜ ์ด๋ฆ„ @RequestMapping( value=“/ํ•˜์œ„๊ฒฝ๋กœ/์š”์ฒญURI”, method=RequestMethod.GET) ..

    0504 Framework Library Spring MVC Controller ์ž‘์„ฑ๋ฒ• method ์š”์ฒญ POJO ํด๋ž˜์Šค๋‹ค์ด์–ด๊ทธ๋žจ ์ž‘์„ฑ

    *Framework - ์ž์ฃผ ์‚ฌ์šฉ๋  ๊ธฐ๋Šฅ์„ ๋ฏธ๋ฆฌ ๊ตฌํ˜„ํ•ด ๋†“์€ ๊ฒƒ ( ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ) - ๋ฐฐํฌ๋Š” .jar๋กœ ์ˆ˜ํ–‰ (.class๋งŒ, war๋Š” class์™€ html,jsp๋„ ๊ฐ™์ด) - ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ์ž์˜ ์ƒํ™ฉ์— ๋งž๊ฒŒ ์ˆ˜์ •ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ณ , ์ƒ๋ช…์ฃผ๊ธฐ์˜ ๊ด€๋ฆฌ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•˜์ง€ ์•Š์Œ (new ์•ˆํ•จ) - ๋ฐ˜ ์กฐ๋ฆฝํ˜•ํƒœ - ์ตœ์†Œํ•œ์˜ ํ’ˆ์งˆ ๋ณด์žฅ์„ ๋ฐ›๊ธฐ ์œ„ํ•ด ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋„์ž… - Spring, MyBatis, any framework,,,, *Library - ์ž์ฃผ ์‚ฌ์šฉ๋  ๊ธฐ๋Šฅ์„ ๋ฏธ๋ฆฌ ๊ตฌํ˜„ํ•ด ๋†“์€ ๊ฒƒ ( ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ ) - ๋ฐฐํฌ๋Š” .jar๋กœ ์ˆ˜ํ–‰ - ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๊ณ , ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ด€๋ฆฌํ•จ *Spring - spring.io์—์„œ ๋ฌด๋ฃŒ ์ œ๊ณต - Spring IoC(Inversion of Control)์—์„œ..