๐ป/SpringBoot5 [Spring Boot] Controller, Service, DAO, Mapper, DTO ์ ๋ฆฌ 1. ๊ธฐ๋ณธ๊ตฌ์กฐ ์น ํ๋ฉด - Controller - Service - DAO - Mapper - DB Controller : ํธ์ถ๋ URL์ ํตํ ๋ฐ์ดํฐ ์ ์ถ๋ ฅService : DAO ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ ๋น์ฆ๋์ค ๋ก์ง ์ํDAO(Data Access Object) : DB ๋ฐ์ดํฐ์ ์ ๊ทผ, ๋ฐ์ดํฐ๋ฅผ ์ฝ์ , ์ญ์ , ์กฐํ ๋ฑ ํ ์ ์์.Mapper : Mapping ํ์ผ์ ์๋ SQL์ ์๋ฐ ์ธํฐํ์ด์ค๋ฅผ ํตํด ํธ์ถํ ์ ์๋๋ก ํด์ค.DTO(Data Transfer Object) : ๊ณ์ธต ๊ฐ ๋ฐ์ดํฐ ๊ตํ์ ์ํ ๋ก์ง์ ๊ฐ์ง์ง ์๋ ๋ฐ์ดํฐ ๊ฐ์ฒด. getter, setter ๋ฉ์๋๋ง ๊ฐ์ง ํด๋์คMapper: DAO ๋์ ์ธํฐํ์ด์ค๋ง์ ์ฌ์ฉํ์ฌ DB์ ์ ๊ทผํ ์ ์๋ค. (mybatis ์ฌ์ฉ ์ ์ฌ์ฉํจ.).. 2024. 12. 25. [Thymeleaf] Thymeleaf ์ด๊ธฐ ์ค์ , ๋ทฐ ํ ํ๋ฆฟ ์ฌ์ฉ ํ์ ๋ฆฌํ์ ํน์ง์ ์๋์ ๊ฐ์ต๋๋ค.*.html ํ์ฅ์๋ฅผ ์ฌ์ฉํ๋ค.๋ณ๋์ ๋ ์ด์์ ํ๋ ์์ํฌ์ ๋์ ์์ด ๋ ์ด์์์ ๊ด๋ฆฌํ ์ ์๋ค.์คํฌ๋ฆฝํธ๋ฆฟ์ด ์๋ HTML ๋ฌธ๋ฒ์ผ๋ก JAVA ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ค.์์ฐ์ฑ ํ๋์ ์์ฒญ๋๊ฒ ๊ณต์ ๋ค์ธ ๋๋์ด ๋ฉ๋๋ค.ํ์ ๋ฆฌํ์์๋ JSP์ ์คํฌ๋ฆฝํธ๋ฆฟ์ ์ฌ์ฉํ ์ ์๊ณ , ๋์ ๊ฐ์ ๊ธฐ๋ฅ์ ํ๋ ${}๊ณผ ๊ฐ์ ํํ์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.ํ์ง๋ง ์คํฌ๋ฆฝํธ๋ฆฟ๊ณผ๋ ๋ค๋ฅด๊ฒ HTML ์ฝ๋์ ์ฌ๋ฏธ์ฑ์ ํฌ๊ฒ ํด์น์ง ์์ต๋๋ค.๊ฐ์คํ๊ณ , ๊ทธ๋ผ ์ด thymeleaf๋ฅผ Spring Boot ํ๋ก์ ํธ์์ ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ์์๋ณด๊ฒ ์ต๋๋ค. 1. Thymeleaf prefix, suffix ์ ์๋จผ์ , Thymeleaf ํ์ผ์ ์ด๋์ ๊ด๋ฆฌํ ๊ฒ์ธ์ง application.properties์ ์ ์ํด์ผ.. 2024. 12. 14. [Spring Boot] ์ปจํธ๋กค๋ฌ / @annotation ์ ๋ฆฌ +๊ฐ๋จํ viewํ์ผ ๋๊ธฐ๊ธฐ ์ด๋ฒ๊ธ์ Controller ์ ๋ํด ์ข๋ ์์ธํ ์์๋ณด๊ณ Index ํ์ด์ง๋ฅผ ๋ง๋ค์ด ๋ณด๊ฒ ๋ค. Controller๋ MVC์์ C์ ํด๋นํ๋ฉฐ ์ฌ์ฉ์์ ์์ฒญ์ ์ฒ๋ฆฌํ ํ V์ ํด๋น๋๋ ๋ทฐ์ M์ ํด๋น๋๋ ๋ชจ๋ธ ๊ฐ์ฒด๋ฅผ ๋๊ฒจ์ฃผ๋ ์ญํ ์ ๋ด๋นํ๋ค. Controller ์ ๋ํ์ ์ธ ์ด๋ ธํ ์ด์ ์ ์ด๋ค๊ฒ ์๋์ง ์์๋ณด๊ฒ ๋ค.@ControllerController ์ ์ญํ ์ ์ํํ๋ค๊ณ ๋ช ์ํ๋ค. ๋ช ์๋ ํด๋์ค๋ฅผ Spring MVC ์ปจํธ๋กค๋ฌ๋ก ํ์ํ๋๋ฐ ์ฌ์ฉ๋๋ค.์ฃผ๋ก View์ ๋ฐํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ๊ธฐ ์ํด์๋ @ResponseBody ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํ์ฌ ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ ๋ฐ์ดํฐ๋ฅผ JSON ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ฐํํ ์ ์๋ค.์ฌ์ฉ ๋ฐฉ๋ฒ์ ํด๋์ค ์ ์ธ๋ถ์ ์ ๋ ฅํ๋ค.@Controller public class.. 2024. 12. 14. [Spring Boot] ์คํ๋ง ์์กด์ฑ ์ฃผ์ @Autowired, @Resource, @Inject ์คํ๋ง ์์กด์ฑ ์ฃผ์ @Autowired, @Resource, @Inject (Java Spring Dependency Injection)โ์์กด์ฑ ์ฃผ์ ์ ๊ฐ์ฒด๋ฅผ ์ง์ ์์ฑํ์ง ์๊ณ @Service์ ์ด์ฉํ์ฌ class annotation์ผ๋ก ๋ฌ์์ฃผ๋ฉด ์คํ๋ง์ beanFactory์ ๋ด์ ๋๊ณ ์ฌ์ฉํ๋ ๊ณณ์ @Autowired์ ์ฌ์ฉํ๋ ๊ณณ์ ํด๋น bean์ ์ฐพ์ ์ฃผ์ ์์ผ ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ ์ ์๊ฒ ๋์์ค๋ค.โ1. @Autowired @Autowired๋ ์ฃผ์ ํ๋ ค๊ณ ํ๋ ๊ฐ์ฒด์ ํ์ ์ด ์ผ์นํ๋ ๊ฐ์ฒด๋ฅผ loc ์ปจํ ์ด๋ ์์ ์กด์ฌํ๋ Bean์ ์๋์ผ๋ก ์ฃผ์ ํ๋ค. โ์ฃผ์ ๋ฐฉ๋ฒ์ 3๊ฐ์ง๊ฐ ์๋ค.โํ๋ ์ฃผ์ (Field Injection)ํ๋์ @Autowired ์ด๋ ธํ ์ด์ ์ ๋ถ์ฌ ์ฃผ๋ฉด ์๋์ผ๋ก ์์กด์ฑ์ด ์ฃผ์ ๋๋ค. ๋งค.. 2024. 12. 14. [STS/Spring Boot] STS์์ maven์ผ๋ก build ํ๋ ๋ฐฉ๋ฒ 1. package > Run As > Maven build 2. Goals ์ 'package' ์ ๋ ฅํ๊ธฐ 3. console ์ฐฝ์ 'BUILD SUCCESS' ๋จ๋ฉด ์๋ฃ +Build๊ฐ ์๋๋ ๊ฒฝ์ฐ ํด๊ฒฐ ๋ฐฉ๋ฒ: C:\Users\์๋์ฐ๊ณ์ ์ด๋ฆ\.m2 ํด๋ ์๋์ ์๋ ๋ชจ๋ ํด๋๋ฅผ ์ญ์ ํ ๋ค์ STS๋ฅผ ์คํํ๋ฉด ์๋์ผ๋ก ๋น๋ํ๋ฉด์ ๋ฉ์ด๋ธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ฐ๊ฒ ๋๋ค. 2024. 12. 12. ์ด์ 1 ๋ค์