์ค๋ ๊ณต๋ถํ ๋ด์ฉ
- [์คํ๋ง MVC1ํธ] ์๊ฐ
- [์ธํ๋ฐ - ์คํ๋ง ์ํ๋ฆฌํฐ] ignoring() ๋ฃ๊ธฐ
- [Modern Java In Action] 3์ฅ, ๋๋ค ํํ์ ๋ง๋ฌด๋ฆฌ
๐ญ๋๋ ์ & ๋ฐฐ์ด ์
- [์คํ๋ง MVC1ํธ] ์ ์๊ฐํ๋ค. ์ฌ์ค ๋๋ถ๋ถ์ ์ด๋ฏธ ํ๋ฒ ๋ค์๋ ๊ฒ๋ค์ด์ด์ ์๊ฐ๋ญ๋น๋ผ๋ ๋๋์ ์กฐ๊ธ ๋ฐ๊ธฐ๋ ํ๋๋ฐ, ๋ฉ์ธ์ง ์ปจ๋ฒํฐ์ ArgumnetResolver, ReturnValueHandler์ ์๋ ๋ฐฉ์์ ๋ํด ์ด์ ์๋ ์ดํด๋ฅผ ๋ชปํ๊ณ ๋์ด๊ฐ์๋๋ฐ ์ด๋ฒ์ ๋ณต์ตํ๋ฉฐ ์ดํดํ๋ค. ์ ๋ชจ๋ฅด๊ณ ๋์ด๊ฐ์ผ๋ฉด์ ์ง๊ธ๊น์ง ๋ณต์ต ์ํ๋์ง๋ ๋๋ ์ฐธ ์๋ฌธ์ด์ง๋ง... ์๋ฌดํผ ๋คํ์ด์๋ค.
- ์ง๊ธ๊น์ง HttpSecurity๋ง ์ฌ์ฉํ๊ณ WebSecurity๋ ์ ์๋๊ฑฐ์ง? ํ์๋๋ฐ ์ค๋ ์์ ์ ๋ฃ๊ณ ์๊ฒ๋์๋ค. WebSecurity๋ฅผ ์ฐ๋ฉด ํํฐ ์์ฒด๋ฅผ ํ์ง ์์์ ํจ์ฌ ๋น ๋ฅธ๋ฐ ์ง๊ธ๊น์ง permitAll()๋ง ์ฃผ๊ตฌ์ฅ์ฐฝ ํด๋๊ณ ์์๋๋.. ์ดํด.. ๊ทธ๋ฐ๋ฐ permitAll()์ ๊ทธ๋ผ ๋ฌด์กฐ๊ฑด ignoring()์ผ๋ก ๋์ฒดํ๋ ๊ฒ์ด ๋ ์ข์ ๊ฑฐ ๊ฐ์์ ignoring() ๋์ permitAll()์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ์๋์ง ์ง๋ฌธ๋๋ ธ๋๋ฐ ๋ค์ ์์ ์ ๋ณด๊ณ ์ต๋ช ์ฌ์ฉ์์ ๋ก๊ทธ์ธํ ์ฌ์ฉ์ ๋ ๋ค ์ ๊ทผ ๊ฐ๋ฅํ ๋ ๋ก๊ทธ์ธ ์ฌ๋ถ์ ๋ฐ๋ผ ๋์ ์ผ๋ก ํ์ด์ง๊ฐ ๋ฐ๋์ด์ผ ํ๋ ๊ฒฝ์ฐ ํํฐ๋ฅผ ํ์ผ ์ธ์ฆ์ ๋ณด๊ฐ ๋ค์ด์ค๊ธฐ ๋๋ฌธ์ permitAll()์ ํด์ฃผ์ด์ผ ํ๋ค๊ณ ๋ง์ํด์ฃผ์ จ๋ค.
- ๋๋ค ํํ์์ ๋ชจ๋ ๋๋๋ค. ํ์คํ ์ต์ํด์ง๋ ค๋ฉด ์กฐ๊ธ ๋ ๊ฑธ๋ฆฌ๊ฒ ์ง๋ง ๊ทธ๋๋ ๋ฟ๋ฏํ๋ค!
๐ฅ๋ด์ผ ๊ณต๋ถํ ๋ด์ฉ
- ๋ฌดํ๋๊ธ์ด ์๋, ํ๋์ ๋๊ธ์ ๋ํ ๋ฌดํ ๋๋๊ธ ๊ตฌํํ๊ธฐ
(๊ตฌํ ๋ชปํ ๊ฑฐ ๊ฐ์ง๋ง ๊ฐ๋ฅํ๋ค๋ฉด)
- [์คํ๋ง MVC2ํธ]
- [Modern Java In Action] 4์ฅ, ์คํธ๋ฆผ ๊ณต๋ถํ๊ธฐ
- [์ด๊ฒ์ด ์ทจ์ ์ ์ํ ์ฝ๋ฉ ํ ์คํธ๋ค] ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ ๊ณต๋ถํ๊ธฐ
์ค๋ ๊ณต๋ถํ ๋ด์ฉ ํฌ์คํ
[Setting] Slf4J ๋ก๊ทธ ๋จ๊ธฐ๊ธฐ
logging.level.mvc.study=info mvc์ study๋ ํจํค์ง ์ด๋ฆ๋ค์ด๋ค. mvc.study ํจํค์ง์ ๊ทธ ํ์ ํด๋์ ๋ก๊ทธ ๋ ๋ฒจ์ ์ค์ ํ๋ค. trace debug info(๊ธฐ๋ณธ๊ฐ) warn error ์๋๋ก ๊ฐ ์๋ก ๋ก๊ทธ ๋ ๋ฒจ์ด ์ฌ๋ผ๊ฐ๋ค. (๊ฐ๋ฐ์..
ttl-blog.tistory.com
[MVC] ์์ฒญ ๋งคํ (@RequestMapping, PathVariable)
URL ๊ฒฝ๋ก์ ๋ํ ๋งคํ @RequestMapping("/hello") /hello ๋ก URL ํธ์ถ์ด ์ค๋ฉด ์ด ๋ฉ์๋๊ฐ ์คํ๋๋๋ก ๋งคํํ๋ค. ๋๋ถ๋ถ์ ์์ฑ์ ๋ฐฐ์ด๋ก ์ ๊ณตํ๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ด ๋ค์ค ์ค์ ๋ ๊ฐ๋ฅํ๋ค. {"/hello" , "/hi"} ์ถ๊ฐ.
ttl-blog.tistory.com
[MVC] @RequestParam
@RequestParam HTTP ์์ฒญ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ์์ฌ ๋ ์ฌ์ฉํ๋ค. @ResponseBody @RequestMapping("/request-param-v2") public String requestParamV2( @RequestParam("username") String memberName, @RequestParam("ag..
ttl-blog.tistory.com
[MVC] @ModelAttribute
@RequestParam์ ํตํด ํด๋ผ์ด์ธํธ์์ ๋ณด๋ธ ํ๋ผ๋ฏธํฐ๋ฅผ ๋ฐ์์ฌ ์ ์์๋ค. ํ์ง๋ง ์ฐ๋ฆฌ๋ ํด๋น ํ๋ผ๋ฏธํฐ๋ฅผ ์ฌ์ฉํด์ ํ์ํ ๊ฐ์ฒด๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค. ์ด๋ ์คํ๋ง์ด ์ ๊ณตํ๋ @ModelAttribute๋ฅผ ์ฌ์ฉํ๋ฉด
ttl-blog.tistory.com
[MVC] ResponseEntity
ResponseEntity๋? ์คํ๋ง์์ ์ ๊ณตํ๋ ํด๋์ค์ธ HttpEntity ๋ฅผ ์์๋ฐ๊ณ ์์ผ๋ฉฐ, RestTemplate ๋ฐ @Controller์์ ์ฌ์ฉ๋๋ค. HttpRequest์ ๋ํ ์๋ต ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ฉฐ ๋ฐ๋ผ์ HttpStatus, HttpHeaders, Htt..
ttl-blog.tistory.com
[MVC] @RequestBody
@RequestBody ๋ฅผ ์ฌ์ฉํ๋ฉด HTTP ๋ฉ์์ง ๋ฐ๋ ์ ๋ณด๋ฅผ ํธ๋ฆฌํ๊ฒ ์กฐํํ ์ ์๋ค. ์ฃผ์ํด์ผ ํ ์ ์ @RequestBody๋ HTTP ๋ฉ์์ง ๋ฐ๋์ ์ ๋ณด๋ฅผ ์กฐํํ๋ ๊ฒ์ด๊ณ @RequestParam , @ModelAttribute๋ ์์ฒญ..
ttl-blog.tistory.com
[MVC] HTTP ์์ฒญ - ํค๋ ์กฐํ (@RequestHeader, @CookieValue, Locale)
์คํ๋ง MVC๋ฅผ ์ฌ์ฉํ ๋ ์์ฒญ ํค๋๋ฅผ ์กฐํํ๋ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ๋ค. @ResponseBody @RequestMapping("/headers") public String headers(HttpServletRequest request, HttpServletResponse response, HttpMethod http..
ttl-blog.tistory.com
[MVC] HTTP์๋ต - ๊ฐ์ฒด๋ฅผ JSON ์ผ๋ก ๋ฐํํ๊ธฐ (@ResponseBody, ResponseEntity, @ResponseStatus, @RestController)
@GetMapping("/response-body-json-v1") public ResponseEntity responseBodyJsonV1() { HelloData helloData = new HelloData(); helloData.setUsername("userA"); helloData.setAge(20); return new ResponseEnt..
ttl-blog.tistory.com
[MVC] HTTP ๋ฉ์์ง ์ปจ๋ฒํฐ ( + Argumentresolver, ReturnValueHandler)
HTTP ๋ฉ์์ง ์ปจ๋ฒํฐ ๋ทฐ ํ ํ๋ฆฟ์ผ๋ก HTML์ ์์ฑํด์ ์๋ตํ๋ ๊ฒ์ด ์๋๋ผ, HTTP API์ฒ๋ผ JSON ๋ฐ์ดํฐ๋ฅผ HTTP ๋ฉ์์ง ๋ฐ๋์์ ์ง์ ์ฝ๊ฑฐ๋ ์ฐ๋ ๊ฒฝ์ฐ HTTP ๋ฉ์์ง ์ปจ๋ฒํฐ๋ฅผ ์ฌ์ฉํ๋ฉด ํธ๋ฆฌํ๋ค. ์คํ๋ง
ttl-blog.tistory.com
GitHub - ShinDongHun1/ModernJavaInAction_Code: Code by studying Modern Java In Action
Code by studying Modern Java In Action. Contribute to ShinDongHun1/ModernJavaInAction_Code development by creating an account on GitHub.
github.com
'๐ณ TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] 2021-12-31 (0) | 2021.12.31 |
---|---|
[TIL] 2021-12-30 (0) | 2021.12.30 |
[TIL] 2021-12-28 (0) | 2021.12.28 |
[TIL] 2021-12-27 (0) | 2021.12.27 |
[TIL] 2021-12-26 (0) | 2021.12.27 |