์ ์ฒด ๊ธ
-
[Spring] Swagger์์ JWT๊ด๋ จ ์ค์ ํ๊ธฐ (Authorization, ArgumentResolver)Backend/Spring 2023. 5. 27. 15:14
Swagger ์ค์ ๊ด๋ จ ํฌ์คํธ [Spring] Spring Boot 3.x์์ Swagger ์ค์ ํ๊ธฐ ์์ํ๊ธฐ Spring Boot 3.x๋ก ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐ Swagger์ ํ์์ฑ์ ๋๊ผ๋ค. Swagger ์ค์ ์ด ๊ฐ๋จํ๋ ๊ฒ์ผ๋ก ์๊ณ ์์ด์ ๊ธ๋ฐฉ ๋๋ ๊ฑฐ๋ผ๊ณ ์๊ฐํ์ง๋ง ์๊ฐ๋ณด๋ค ๊ณ ๋์ ๊ฒช์๋ค. ๊ด๋ จ ๋ด์ฉ์ ํฌ์คํ ํ miraekwak.tistory.com Swagger์ JWT JWT๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ์ ํ์๊ธฐ ๋๋ฌธ์, ๊ฑฐ์ ๋ชจ๋ api์์ ํ ํฐ ๊ฒ์ฌ๋ฅผ ํ๊ณ ์์๋ค. ArgumentResolver๋ฅผ ํตํด ๋ค์ด์จ token์ ๊ฒ์ฌํ๊ณ token์์ ์ฌ์ฉ์ Id๋ฅผ ๊ฐ์ ธ์ ์ฌ์ฉ์ ์ธ์ฆ ์ํฐํฐ๋ก ๋ณํํ์ฌ ์ฌ์ฉํ์๋ค. ์ฌ๊ธฐ์ ํ์ํ๋ Swagger ์ค์ ์ ๋ํด ์ค๋ช ํ๊ณ ์ ํ๋ค. Swagger Security..
-
[Spring] Spring Boot 3.x์์ Swagger ์ค์ ํ๊ธฐBackend/Spring 2023. 5. 27. 15:12
์์ํ๊ธฐ Spring Boot 3.x๋ก ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐ Swagger์ ํ์์ฑ์ ๋๊ผ๋ค. Swagger ์ค์ ์ด ๊ฐ๋จํ๋ ๊ฒ์ผ๋ก ์๊ณ ์์ด์ ๊ธ๋ฐฉ ๋๋ ๊ฑฐ๋ผ๊ณ ์๊ฐํ์ง๋ง ์๊ฐ๋ณด๋ค ๊ณ ๋์ ๊ฒช์๋ค. ๊ด๋ จ ๋ด์ฉ์ ํฌ์คํ ํ ๊ฒ์๋ฌผ๋ ์ ์ด๋ณด์ฌ ๋ด๊ฐ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค! Swagger ์ค์ ํ๊ธฐ dependency ์ค์ swagger๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ spring fox์ springdoc ๋๊ฐ์ง๊ฐ ์๋ค. ์ด์ ๊น์ง๋ springfox๋ฅผ ์ฌ์ฉํ์์๋๋ฐ Spring Boot 3.x์์ springfox๋ฅผ ์ฌ์ฉํ์ 404 error๊ฐ ๋ฐ์ํ๋ค. Spring Boot 3.x ๋ฒ์ ์์๋ ๋ฌด์กฐ๊ฑด springdoc์ ์ฌ์ฉํด์ผ ํ๋ค. ์ ์ฉํ ํ๋ก์ ํธ์ ๋ฐ๋ผ dependency๊ฐ ๋ฌ๋ผ์ง๊ฒ ๋๋๋ฐ Spring Boot 3.x์ ๊ฒฝ์ฐ ap..
-
[BOJ-JAVA] 1918๋ฒ: ํ์ ํ๊ธฐ์Algorithm/Baekjoon Online Judge 2023. 4. 18. 21:13
๋ฌธ์ https://www.acmicpc.net/problem/1918 1918๋ฒ: ํ์ ํ๊ธฐ์ ์ฒซ์งธ ์ค์ ์ค์ ํ๊ธฐ์์ด ์ฃผ์ด์ง๋ค. ๋จ ์ด ์์์ ํผ์ฐ์ฐ์๋ ์ํ๋ฒณ ๋๋ฌธ์๋ก ์ด๋ฃจ์ด์ง๋ฉฐ ์์์์ ํ ๋ฒ์ฉ๋ง ๋ฑ์ฅํ๋ค. ๊ทธ๋ฆฌ๊ณ -A+B์ ๊ฐ์ด -๊ฐ ๊ฐ์ฅ ์์ ์ค๊ฑฐ๋ AB์ ๊ฐ์ด *๊ฐ ์๋ต๋๋ ๋ฑ์ www.acmicpc.net ์ฐ๋ฆฌ๊ฐ ๋ณดํต ์์์ ์ธ ๋ ์ฌ์ฉํ๋ ์ค์ ํ๊ธฐ๋ฒ์ ํ์ ํ๊ธฐ๋ฒ์ผ๋ก ๋ณํํ๋ ๋ฌธ์ ์ด๋ค. ๋ฌธ์ ํ์ด ๋ฐฑ์ค ๋ฌธ์ ์ค๋ช ์ ๋ณด๋ฉด ์ค์ ํ๊ธฐ๋ฒ์ ํ๊ธฐํ๊ธฐ๋ฒ์ผ๋ก ๋ณํํ ๋ ๊ดํธ๋ฅผ ํตํด ์ฐ์ ์์๋ฅผ ํ์ํ๊ณ ๊ณ์ฐํ๊ณ ์๋ค. ๊ดํธ๋ฅผ ์ด์ฉํ ๋ฌธ์ ์ ๊ฒฝ์ฐ stack์ ํตํด ํด๊ฒฐํ ์ ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค. ๋ค๋ง stack์ ์ด๋ป๊ฒ ์ ์ฉํด์ ํ ์ ์๋์ง ์๊ฐํ๋๊ฒ ์ฝ์ง ์์๋ค. ์ฐ์ ๊ดํธ๋ก ํ์ํ๋๊ฒ ์ฐ์ฐ์์ ์ฐ..
-
[BOJ-JAVA] 17299๋ฒ: ์ค๋ฑํฐ์Algorithm/Baekjoon Online Judge 2023. 4. 17. 17:32
๋ฌธ์ https://www.acmicpc.net/problem/17299 17299๋ฒ: ์ค๋ฑํฐ์ ์ฒซ์งธ ์ค์ ์์ด A์ ํฌ๊ธฐ N (1 ≤ N ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ์ ์์ด A์ ์์ A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. www.acmicpc.net ์์ด์ด ์ฃผ์ด์ง ๋ ๊ฐ๊ฐ ์ธ๋ฑ์ค์ ์์์ ์ค๋ฅธ์ชฝ์ ์๋ ์ ์ค ๊ฐ์ฅ ๊ฐ์๊ฐ ๋ง์ ์ต์ข์ธก ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค. https://www.acmicpc.net/problem/17298 17298๋ฒ: ์คํฐ์ ์ฒซ์งธ ์ค์ ์์ด A์ ํฌ๊ธฐ N (1 ≤ N ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์ ์์ด A์ ์์ A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. www.acmicpc.n..
-
[BOJ-JAVA] 17298๋ฒ: ์คํฐ์Algorithm/Baekjoon Online Judge 2023. 4. 17. 16:57
๋ฌธ์ https://www.acmicpc.net/problem/17298 17298๋ฒ: ์คํฐ์ ์ฒซ์งธ ์ค์ ์์ด A์ ํฌ๊ธฐ N (1 ≤ N ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์ ์์ด A์ ์์ A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค. www.acmicpc.net ์์ด์ ์ฃผ์ด์ง ๋ ๊ฐ ์ธ๋ฑ์ค๋ฅผ ๊ธฐ์ค์ผ๋ก ๊ฐ์ฅ ์ค๋ฅธ์ชฝ์ ์๋ ์ธ๋ฑ์ค์ ์๋ณด๋ค ํฐ ์๋ฅผ ์ฐพ๋ ๋ฌธ์ ์ด๋ค. ๋ฌธ์ ํ์ด 2์ฐจ์ ๋ฐฐ์ด์ ์ฌ์ฉํด์ ํธ๋๊ฒ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ์์ด์ง๋ง ์๊ฐ์ด๊ณผ๊ฐ ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์๋ฃ๊ตฌ์กฐ๋ฅผ ์ ์ ํ ํ์ฉํด์ผํ๋ค. stack์ ์ฌ์ฉํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ๊น์ง๋ ํ์ธ์ ํ์ง๋ง stack์ ์ด๋ป๊ฒ ํ์ฉํด์ผํ๋์ง ๊ณ ๋ฏผํ๋ ๋ฌธ์ ์ด๋ค. ์ด๋ฐ์๋ ์์ด์ ๋ค์์๋ถํฐ ํ์ธํ๋ฉฐ ์คํฐ์๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ์ ๊ตฌํ๋ ค ํ์ง..