Spring/[2022] Spring boot(7)
-
[์คํ๋ง๋ถํธ] jar ํ์ผ๋ก ๋ฐฐํฌํ๊ธฐ
Spring boot ๋ฅผ ์ฌ์ฉํด์ ์น ์๋ฒ๋ฅผ ๊ฐ๋ฐํ๊ณ ํ๋ก์ ํธ๋ฅผ jar ๋๋ war ํ์ผ๋ก ๋ฐฐํฌํ ์ ์๋ค. ์ด๋ jar์ war์ ์ฐจ์ด๋ ์คํ๋ง๋ถํธ์์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํฐ์บฃ ์๋ฒ๊ฐ ๋ด์ฅ๋์ด์๋๋ฐ ๋ด์ฅ๋ ์๋ฒ๋ฅผ ํฌํจํ์ฌ ๋ฐฐํฌํ ๊ฒ์ด๋ผ๋ฉด jarํ์ผ๋ก ๋ฐฐํฌํ๊ณ , ์น ์๋ฒ๋ฅผ ๋ฐ๋ก ๊ตฌ์ถํ ๊ฒฝ์ฐ์๋ ์คํ๋ง๋ถํธ ์ ํ๋ฆฌ์ผ์ด์ ๋ง ๋ฐฐํฌํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ war ํ์ผ๋ก ๋ฐฐํฌํ ์ ์๋ค. ์ผ๋จ ๋๋ ๋ฐ๋ก ์น์๋ฒ๋ฅผ ๊ตฌ์ถํ์ง ์์๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฅ jarํ์ผ๋ก ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ดค๋ค! ๋จผ์ IntelliJ๋ฅผ ์ฌ์ฉํ๊ณ , gradle ๊ธฐ๋ฐ์ผ๋ก ์คํ๋ง ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์๋ค. 1๏ธโฃ cmd ์ฐฝ์์ ํ๋ก์ ํธ๊ฐ ์์นํ ํด๋๋ก ์ด๋ํ๊ณ , gradlew clean build ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด์ค๋ค. 2๏ธโฃ build > libs ํด๋๋ก ์ด๋ํ๋ฉด ja..
2022.03.06 -
์คํ๋ง ๋ถํธ๋ก ๊ฐ๋จํ ๊ฒ์ํ ๋ง๋ค๊ธฐ (ํ์๋ฆฌํ ๊ธฐ๋ณธ ๊ธฐ๋ฅ, Thymeleaf)
๊ฒ์ํ์ ์ง๊ธ๊น์ง ๋ง์ด ๋ง๋ค์์๋๋ฐ ์คํ๋ง ๋ถํธ๋ฅผ ํ์ฉํด์ ๊ฒ์ํ์ ๋ง๋๋ ๊ฒ๋ ํ๋ฒ ํด๋ณด์ ํด์ ๋ ๋ง๋ค์ด ๋ณธ๋ค! 1๏ธโฃ ํ ์ด๋ธ ์์ฑ ํ ์ด๋ธ์ ์์ ๋ถํฐ ๊ณ์ ์ฌ์ฉํด์ค๋ ํ ์ด๋ธ์ ์ด์ฉํด์ค ์์ ์ด๋ค. 2๏ธโฃ ์์ฑ ํ๋ฉด ๊ธฐ๋ณธ ํ๋ฉด์ ์ด๋ ๊ฒ ๊ตฌ์ฑ๋์ด ์๋ค. ์ด๋ฒ์๋ ์ ๋ง ๊ฐ๋จํ๊ฒ CRUD๋ง ์์ฑํ ์์ ์ด๊ณ ์ด์ ๊ฒ์ฆ, ๋ก๊ทธ์ธ ๋ฑ์ ๊ตฌํํด์ ์ ์ ๋ฐ์ ์ํฌ ์์ ์ด๋ค. (์ด๋ฒ์ ์ง์ง..!!!) ๋ช๋ฒ์ด๋ ๊ณต๋ถํ๋ฉด์ ๊ฒ์ํ์ ๋ง๋ค์ด์๋๋ฐ ๋ค๋ฅธ ์ ์ด๋ผ๋ฉด ํ์๋ฆฌํ๋ฅผ ํ์ฉํด JSP๋ ์ ํ ์ฌ์ฉํ์ง ์๋๋ค๋ ์ ์ด๋ค! ์ฌ์ฉํด๋ณธ ๊ฒฐ๊ณผ HTML์ ๋ค๋ฅธ ์ฝ๋ ๋ฑ์ด ์์ด์ง ์๋๋ค๋ ์ ์ด ์ข๊ณ ํ์๋ฆฌํ๋ ์คํ๋ง์ ์ฐ๋์ฑ์ด ์ข์์ ํ์ฉํ๊ธฐ ๊ต์ฅํ ์ข์๋ค. 3๏ธโฃ Board.class ์ด๋ฒ์๋ ๋กฌ๋ณต๋ ํ์ฉํด์ ์ข ๋ ์ฝ๋๋ฅผ ๊ฐ๊ฒฐํ๊ฒ ํด์คฌ..
2022.01.19 -
Spring boot, IntelliJ์์ ๋กฌ๋ณตLombok ์ค์นํ๊ธฐ
1๏ธโฃ ์ฐ์ Gradle์ ์์กด์ฑ์ ์ถ๊ฐํด์ค๋ค. ๊ทธ๋ฆฌ๊ณ ๋ณ๊ฒฝ ๋ด์ฉ์ด ์๋ค๋ฉด ์ ์ฌ์ง์๋ ์๋ณด์ด์ง๋ง ์ฝ๋ผ๋ฆฌ ๋ชจ์์ด ์ค๋ฅธ์ชฝ ์๋จ์ ๋ํ๋ ํ ๋ฐ ๊ทธ ๋ฒํผ ๋๋ฌ์ฃผ๋ฉด ๋๋ค. 2๏ธโฃ Plugins ์ค์นํ๊ธฐ ์๋์ฐ ๊ธฐ์ค Files -> settings - > plugins ๊ฒ์ marktetplace์ lombok ๊ฒ์ํ๊ณ ์ค์นํด์ฃผ๋ฉด ๋๋ค. โ ๊ทผ๋ฐ ๋๋ ๊ฒ์ํ๋ ค๋๊น ์๋์์ ์์ธ๊ฐ ์ฐพ์๋ณด๋ ๊ธฐ๋ณธ์ผ๋ก ์ค์น๋์ด ์์ด์ ๊ฒ์๋์ง ์๋๋ค๊ณ ํ๋ค! ๊ทธ๋์ installed๋ฅผ ํด๋ฆญํด๋ณด๋ Lombok์ด ์ด๋ฏธ ์ค์น๋์ด ์์๋ค. 3๏ธโฃ Enable annotation prcessing ์ฒดํฌ ์๋์ฐ ๊ธฐ์ค File -> settings -> annotation processor ๊ฒ์ ์ ์์ Enable annotation proces..
2021.12.13 -
[Spring boot #4] ์คํ๋ง API @ResponseBody
์คํ๋ง์์ API๋ผ๊ณ ํ๋ฉด RESTful API๋ผ๊ณ ํ ์ ์๋ค. 1๏ธโฃ @ResponseBody ์ด๋ ๊ฒ @ResponseBody๋ฅผ ์ฌ์ฉํ๋ฉด returnํ ๋ ๋ทฐ ์ด๋ฆ์ ์ง์ ํด viewResolver๊ฐ ํด๋นํ๋ ๋ทฐ๋ก ๋ชจ๋ธ์ ๊ฒฐ๊ณผ๊ฐ์ ์ ๋ฌํ์ง ์๊ณ , ๋์ ์ HTTP Body์ ๋ฌธ์ ๋ด์ฉ์ ์ง์ ๋ฐํํ๋ค. ๊ฒฐ๊ณผ ์ด๋ฉฐ ํ์ด์ง ์์ค๋ณด๊ธฐ๋ก ์์ค์ฝ๋๋ฅผ ๋ด๋ ๋ฌธ์ ๋ด์ฉ๋ง ๋์ค๊ณ , ๋ค๋ฅธ html ํ๊ทธ๋ ์ด๋ฐ๊ฑด ์๊ณ ๊ฐ์ฒด๊ฐ JSON์ผ๋ก ๋ณํ๋๋ค. ์ด๋์๋ ViewResolver๊ฐ ๋์ํ๋ ๊ฒ์ด ์๋๋ผ HttpMessageConverter๊ฐ ๋์ํด ๊ธฐ๋ณธ ๋ฌธ์์ฒ๋ฆฌ๋ฉด StringHtpMessageConverter๊ฐ ๋์ํ๊ณ , ๊ธฐ๋ณธ ๊ฐ์ฒด์ฒ๋ฆฌ๋ฉด MappingJackson2HttpMessageConverter๊ฐ ๋์ํ๋ค.
2021.12.07 -
[Spring boot #3] ์คํ๋ง ํ๋ก์ ํธ ๋ช ๋ นํ๋กฌํํธ(cmd)์์ ๋น๋ํ๊ณ ์คํํด๋ณด๊ธฐ
1๏ธโฃ ์ฐ์ cmd์ฐฝ์ ์ด๊ณ ์์ ์ ํ๋ก์ ํธ๊ฐ ๋ค์ด์๋ ๊ฒฝ๋ก๋ก ์ด๋ํด์ค๋ค. (intelliJ์์ ์๋ฒ๊ฐ ์คํ์ค์ด๋ผ๋ฉด ์ข ๋ฃํ๊ธธ) 2๏ธโฃ ๋๋ D๋๋ผ์ด๋ธ์ ์ด ํด๋์ ์์ด์ ์ด์ชฝ์ผ๋ก ์ด๋ํ๋ค. ๊ทธ๋ฆฌ๊ณ gradlew build๋ฅผ ์ ๋ ฅํ๋ฉด ๊ทธ๋๋ค์ด ์คํ๋๋ค. cd build/libs dir๋ก ํ์ผ ๋ชฉ๋ก์ ํ์ธํ๋ค. ๊ทธ ์ค hello-spring-0.0.1-SNAPSHOT.jar๋ฅผ ๋ณต์ฌํด์ java -jar hello-spring-0.0.1-SNAPSHOT.jar ํด์ฃผ๋ฉด intelliJ์์ ์คํ๋ ๊ฒ์ฒ๋ผ ์คํ๋๋ค!! ๋ค์ ์ ์ํด๋ณด๋ฉด ์ ์ ์๋๋ค! localhost์์๋ ํ์ชฝ์์ ์คํํ๋ฉด ๋ค๋ฅธ์ชฝ์์ ์คํ ์๋๋๊น ๋ค์ intelliJ์์ ์คํํ๊ธฐ์ ์ ๊ผญ ์๋ฒ๋ฅผ ๊บผ์ฃผ๊ธธ!!
2021.12.07 -
[Spring boot #2] ์คํ๋ง ๋ถํธ ์คํํฐ ์ฌ์ดํธ์์ ์คํ๋ง ํ๋ก์ ํธ ์์ฑํ๊ธฐ
1๏ธโฃ ์คํ๋ง ๋ถํธ ์คํํฐ ์ฌ์ดํธ ๊ฒฝ๋ก https://start.spring.io/ 2๏ธโฃ ํ๋ก์ ํธ ์์ฑํ๊ธฐ ์์ ๊ฒฝ๋ก๋ก ๋ค์ด๊ฐ๋ฉด ์ด๋ฐ ํ์ด์ง๋ฅผ ๋ณผ ์ ์๋ค. Project : ์ฐ์ Maven Project์ Gradle Project๊ฐ ์๋๋ฐ ์์ฆ์ maven ๋ณด๋ค gradle๋ก ํ๋ก์ ํธ๋ฅผ ๋ง์ด ๋ง๋๋ ์ถ์ธ๋ผ๊ณ ํ๋ค. ๊ทธ๋ผ ๊ทธ๋๋ก ๋ฐ๋ผ๊ฐ๋๊ฒ ์ข์ผ๋๊น gradle project๋ฅผ ์ ํํ๋ค. Spring Boot : 2.6.2 2.6.1 ๋ญ ์ด๋ ๊ฒ ์๋๋ฐ 2021-12 ๊ธฐ์ค์ผ๋ก ๊ฐ์ฅ ์ต์ ๋ฒ์ ์ธ 2.6.1์ ์ ํํ๋ค. SNAPSHOT์ ์์ง ๋ง๋ค๊ณ ์๋ ๋ฒ์ ์ด๊ธฐ ๋๋ฌธ์ ์์ ํ 2.6.1์ ์ ํํ์. Project Metadata : Group์๋ ํจ์งํค๋ช ์ ์ ๋๋ฐ ๋ณดํต ํ์ฌ ๋๋ฉ์ธ๋ช ์ ๊ธฐ๋ ํ๋๋ฐ ์ด๊ฑด ์ฌ..
2021.12.07 -
[Spring boot #1] IntelliJ IDEA Community ์ค์นํ๊ธฐ
1๏ธโฃ IntlliJ ์ค์น ๊ฒฝ๋ก https://www.jetbrains.com/ko-kr/idea/download/#section=windows ๋ค์ด๋ก๋ IntelliJ IDEA: ์ฐ์์ฑ๊ณผ ์ธ์ฒด ๊ณตํ์ด ๋ด๊ธด JetBrains Java IDE www.jetbrains.com 2๏ธโฃ Community์ ๋ค์ด๋ก๋ ๋ฒํผ ํด๋ฆญ ์ปค๋ฎค๋ํฐ ๋ฒ์ ์๋ ๋ช๊ฐ์ง ์ค์ํ ๊ธฐ๋ฅ์ด ์ ์ธ๋๊ธด ํ์ง๋ง ์ผ๋จ Spring Boot ๊ณต๋ถํ๋ฉด์ ์ฒ์์ผ๋ก ์ดํด๋ฆฝ์ค๊ฐ ์๋ IntelliJ๋ฅผ ์ฌ์ฉํด๋ณผ ์์ ์ด๋ค. ๊ทธ๋ฌ๋ฏ๋ก ์ฐ์ ๋ฌด๋ฃ ๋ฒ์ ์..๐ ๋ฒํผ์ ๋๋ฅด๋ฉด ๋ฐ๋ก ๋ค์ด์ด ๋ ๊ฒ์ด๋ค. ์ฌ๊ธฐ์ ๊ณ์ next ๋๋ฌ์ฃผ๊ณ , ์ค์น ๊ฒฝ๋ก๋ ๊ธฐ๋ณธ C ๋๋ผ์ด๋ธ์ program File๋ก ์ง์ ๋ ๊ฒ์ด๋ค. (๋๋ D๋๋ผ์ด๋ธ์ ์ค์นํ๊ณ ์ถ์ด์ ๋ณ๊ฒฝํด์คฌ๋ค.) ๊ทธ๋ฆฌ๊ณ I..
2021.12.07