-
[๊ฐ์] ์คํ๋ง ์ ๋ฌธ - ์ฝ๋๋ก ๋ฐฐ์ฐ๋ ์คํ๋ง ๋ถํธ, ์น MVC, DB์ ๊ทผ ๊ธฐ์ 1SPRING/INFLEARN 2021. 4. 4. 21:02
์คํ๋ง ๊ณต๋ถ~ [๋ฌด๋ฃ] ์คํ๋ง ์ ๋ฌธ - ์ฝ๋๋ก ๋ฐฐ์ฐ๋ ์คํ๋ง ๋ถํธ, ์น MVC, DB ์ ๊ทผ ๊ธฐ์ - ์ธํ๋ฐ | ๊ฐ์
์คํ๋ง ์ ๋ฌธ์๊ฐ ์์ ๋ฅผ ๋ง๋ค์ด๊ฐ๋ฉด์ ์คํ๋ง ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ์ ๋ฐ์ ๋น ๋ฅด๊ฒ ํ์ตํ ์ ์์ต๋๋ค., ์คํ๋ง ํ์ต ์ฒซ ๊ธธ์ก์ด! ๊ฐ๋ฐ ๊ณต๋ถ์ ๊ธธ์ ์์ง ์๋๋ก ๋์๋๋ฆฝ๋๋ค. ๐ฃ ํ์ธํด์ฃผ์ธ
www.inflearn.com
๋ฌด๋ฃ๋ถ๋ถ๋ง ์ฌ๋ฆฌ๊ฒ ์
์ถ์ฒ : inf.run/reCZ ๊ฐ์
์น์ 1. ํ๋ก์ ํธ ํ๊ฒฝ ์ค์
- ํ๋ก์ ํธ ์์ฑ
start.spring.io/
์คํ๋ง ๋ถํธ ์คํํฐ ์ฌ์ดํธ๋ก ์ด๋ํด์ ์คํ๋ง ํ๋ก์ ํธ ์์ฑ
Project : Gradle Project
Languge : Java
Packaging : Jar
Java : 11 ์ ํ
SpringBoot๋ ๋ค์ ์ด์ฉ๊ตฌ ๋ฌ๋ ค์๋ ๊ฑด ์์ ์ ์ด์ง ์์ ๋ฒ์ ์ด๋ผ๊ณ ํ์ ์ 2.3.9 ์ ํ
build.gradle ์๋ฐ ๋ฒ์ ์ ์ฌ์ฉ๋์ง ์์๋ค๊ณ ํ์์ผ๋ก ๋จ๋๋ฐ... java 11์ ๊ท์ฐฎ์์ ๊น์ง ์์๋๋ฐ ๊น์๋ณด๊ณ ์์ ํ๊ฒ ์.
preferences์์ ๋ญ gradle-build and run using/ run test using ์ Intelij ๋ก ๋ฐ๊พธ๋ฉด ๋ ๋นจ๋ผ์ง๋ค ํด์ preferences์ด๋์๋ ๊ฒ๋ ์ฐพ์๋ค๋. ํ์ง๋ง ์ฌ๋ฌ๋ถ window์์ preference๋ file-setting์ ๋๋ค~
๊ฑ ์ฌ์ค ๊ต์ฌ์ ์์๋๋ฐ ๋๋ง ๋ชป๋ด
HelloSpringApplication.java http://localhost:8080 ์์ ๋์ ํ์ธ ๊ฐ๋ฅ
8080์ธ ์ด์ ๋ ์ฌ์ง์ ์์
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ดํด๋ณด๊ธฐ
๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์์๋ค. ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ด ์ด๋ค ์ญํ ์ ํ๋์ง ์ ์ ์์์!
- view ํ๊ฒฝ์ค์
Welcom Page๋ฅผ ๋ง๋ค์๋ค. static/index.html์ Welcome page ๊ธฐ๋ฅ์ ํ๋ค.
spring์ template engine ์ค thymeleaf ์ฌ์ฉ
html์ <html xmlns:th="www.thymeleaf.org"> ์ถ๊ฐ , th
HelloController.java - ๋น๋ํ๊ณ ์คํํ๊ธฐ
gadlew.bat ์คํ, gradlew build
cd build/libs
java -jar hello-spring-0.0.1-SNAPSHOT.jar
์น์ 2. ์คํ๋ง ์น ๊ฐ๋ฐ ๊ธฐ์ด
- ์ ์ ์ปจํ ์ธ
ํ๋ ๊ฒ ์์ด html ํ์ผ์ ๊ทธ๋๋ก ๋ณด์ฌ์ฃผ๋ ๊ฒ
hello-static.html ํ์ผ์ ๋ง๋ค์ด static ํ์ผ์ ๋ฃ์
->localhost:8080/hello-static.html์ ๋ค์ด๊ฐ๋ฉด ๋๊ฐ์ ๊ทธ ํ์ผ์ ๋ณผ์์์
- MVC์ ํ ํ๋ฆฟ ์์ง
ํ ํ๋ฆฟ ์์ง - ๊ทธ๋ฅ ๋ณด์ฌ์ฃผ์ง ์๊ณ html์ ์๋ฒ์์ ๋ณํํด์ ๋ณด์ฌ์ฃผ๋ ๊ฒ
MVC - model, view, controller
controller์ view๋ฅผ ๊ตฌ๋ถ
view : ํ๋ฉด์ ๊ทธ๋ฆฌ๋๋ฐ ์ง์ค
controller : ๋ด๋ถ์ ๋ก์ง์ ์ง์ค
- API
@ResponsBody http์ ๋ฐ์ดํฐ๋ฅผ ์ง์ ๋ฃ์ด์ฃผ๊ฒ ๋ค.
Json๋ฐฉ์ : key ์ name์ผ๋ก ์ด๋ค์ง ๋ฐฉ์
๊ฐ์ฒด๋ฉด JsonConverter, string์ด๋ฉด StringConverter
'SPRING > INFLEARN' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ