์ฅ์ ์ฌ์ดํธ๋ฅผ ๋ฒค์น ๋งํนํ ์ค๊ณ ๋ฌผํ ๊ฒฝ๋งค ์ฌ์ดํธ
๊ธฐ์กด์ ์นํ๋ก์ ํธ๋ฅผ springMVC๋ก ๋ฆฌํฉํ ๋งํ๋ ํ๋ก์ ํธ์ ๋๋ค.
๊ธฐ์กด ํ๋ก์ ํธ๋ฅผ ๋ฆฌํฉํ ๋งํ๋ ์ด์ ?
springMVC์ ๋ํด ๊ณต๋ถํ ๋ด์ฉ์ ํ๋ก์ ํธ์ ์ ์ฉํด ๋ณด๊ณ ์ถ์ด์ servlet์ผ๋ก ๊ตฌํํ ํํ๋ก์ ํธ๋ฅผ springmvc๋ก ๋ฐ๊พธ๊ณ ,
์ผ๋จ ๋์๊ฐ๊ฒ๋ง ๊ตฌํํ ์์ ๋ด ์ฝ๋๋ค์ ํด๋ฆฐ์ฝ๋๋ก ์์ ํ๋ ๋ฐ์ ์ค์ ์ ๋๊ณ ์ถ์ด์ ๊ธฐ์กด์ ๊ฐ๋ฐํ๋ ํ๋ก์ ํธ๋ฅผ ๋ฆฌํฉํ ๋งํ๊ธฐ๋ก ํ์ต๋๋ค.
ํ๋ก์ ํธ ์งํ ๊ณผ์ ๊ณผ ํ์ต ๋ด์ฉ ๊ธฐ๋กํ๋ ๋ธ๋ก๊ทธ
https://devswim.tistory.com/
Spring Boot 2.5.6
gradle
Java 11
lombok
Jsp
Spring JDBC Template, MySQL
Intellij
- ํ์๊ฐ์
- ์ค๋ณต ๋๋ค์, ์์ด๋, ์ด๋ฉ์ผ ๊ฒ์ฆ
- ๋ก๊ทธ์ธ
- (์์ธ์ฒ๋ฆฌ) ์ผ์นํ์ง ์๋ ๋น๋ฐ๋ฒํธ ์ ๋ ฅ
- ๋ก๊ทธ์์
- ์ํ ๋ฑ๋ก
- ์ํ ์กฐํ
- ์ํ ๋ชฉ๋ก
ํ์ด์ง
- ์
์ฐฐ ๊ธฐ๋ฅ, ์ฆ์ ๋์ฐฐ
- ์
์ฐฐ ๊ธ์ก < ๋์ฐฐ๊ธ์ก์ผ ๊ฒฝ์ฐ
- ์ ์ฐฐ์ก ์ฆ๊ฐ
- ์
์ฐฐ ๊ธ์ก โฅ ๋์ฐฐ๊ธ์ก์ผ ๊ฒฝ์ฐ
- ์ฆ์ ๋์ฐฐํ ๊ฒฝ๋งค ์ข ๋ฃ
- ์ ์ฐฐ ๋ถ๊ฐ๋ฅ
- ์
์ฐฐ ๊ธ์ก < ๋์ฐฐ๊ธ์ก์ผ ๊ฒฝ์ฐ
- ๊ฒฝ๋งค ๋ง๊ฐ์๊ฐ <= ํ์ฌ์๊ฐ -> ๊ฒฝ๋งค ์ข
๋ฃ
- ๊ฒฝ๋งค ์๊ฐ ์ข
๋ฃ์ ์
์ฐฐ์ ์๋ ๊ฒฝ์ฐ
- ๋ง์ง๋ง ์ ์ฐฐ์ ํ์์๊ฒ ๋์ฐฐ
- ๊ฒฝ๋งค ์๊ฐ ์ข
๋ฃ์ ์
์ฐฐ์ ์๋ ๊ฒฝ์ฐ
- ์ ์ฐฐ ์ฒ๋ฆฌ
- ๊ฒฝ๋งค ์๊ฐ ์ข
๋ฃ์ ์
์ฐฐ์ ์๋ ๊ฒฝ์ฐ
- ๋ง๊ฐ๋ ์ ์ฐฐ ๋ถ๊ฐ๋ฅ
- spring JDBCTemplate -> JPA
- ๋ก๊ทธ์ธ ์ธ์ฆ
1.1 spring security + jwt ์ ์ฉ
1.2 jwt์ค์ ์ถ๊ฐ
1.3 refresh ํ ํฐ ์ถ๊ฐ
1.4 access token + refresh token ์ฌ๋ฐ๊ธ - ์์ธ์ฒ๋ฆฌํ๊ธฐ
2.1 ์ธ์ฆ์คํจ, ๊ถํ ์๋ ๊ฒฝ์ฐ -> 401,403
2.2 ์ญ์ ๋ ์ํํ์ด์ง ์์ฒญ -> 404 - ์ํ๋ฑ๋ก
์ด๋ฏธ์ง ํ์ผ ๋ฑ๋ก - ์ค๋ณต๋๋ค์, ์ด๋ฉ์ผ, ์์ด๋ ๊ฒ์ฆ
validation - ์ํ ๊ฒ์ ๊ธฐ๋ฅ