Gallery
Search

์ด์ ํ ์คํธ์ฝ๋์ ๋ค๋ฅธ์
์ค์บ ๋์์์ SecurityConfig๋ฅผ ์ ๊ฑฐ
@WebMvcTest์ด๋
ธํ
์ด์
์ excludeFilters ์์ฑ์ ์ถ๊ฐํ์ฌ SecurityConfig.class๋ฅผ ์ ๊ฑฐํ๋ค. ํด๋น ๋ฐฉ๋ฒ์ ์ถํ ์ฌ์ฉํ์ง ์๋ ๊ฒ์ ๊ถ์ฅํ๊ณ ์๋ค.
๋ชจ์ ์ธ์ฆ ์ฌ์ฉ์ ์ถ๊ฐ @WithMockUser
@WithMockUser์ด๋
ธํ
์ด์
์ ํตํด ๊ฐ์ง ์ธ์ฆ ์ฌ์ฉ์๋ฅผ ์์ฑํ์ฌ ์ถ๊ฐํด์ค๋ค.
์ดํ ํ
์คํธ ์คํ ์ ๋ค์๊ณผ ๊ฐ์ ์ค๋ฅ๋ก ๋ณ๊ฒฝ๋๋ค.
JPA metamodel must not be empty! ์ค๋ฅ
์ ์ค๋ฅ๋ @EnableJpaAuditing์ผ๋ก ์ธํด ๋ฐ์ํ๋ ์ค๋ฅ์ด๋ค. ์ด๋ฅผ ์ํด์๋ ์ต์ 1๊ฐ์ @Entity ํด๋์ค๊ฐ ํ์ํ๋ฐ @WebMvcTest๋ค ๋ณด๋ ์ค์บ ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๊ฐ ์๊ธฐ๊ฒ ๋๋ค. ๋ฐ๋ผ์ ๋ฉ์ธ ํด๋์ค์ธ LdwSpringApplication.java์์ JpaAuditing ์ด๋
ธํ
์ด์
์ ์ ๊ฑฐํ๊ณ ๋ณ๋๋ก config๋ก ๋ถ๋ฆฌํ์ฌ ๊ด๋ฆฌํ๋๋ก ํ๋ค.
[Spring-LDW] ์คํ๋ง ์ํ๋ฆฌํฐ ์ถ๊ฐ ํ @WebMvcTest์์ OAuthService๋ฅผ ๋ชป์ฐพ๋ ์ค๋ฅ ํด๊ฒฐ

๋ฒ์ ๋ณ๊ฒฝ
start.spring.io ์์ ์๋ ์์ฑํ ์คํ๋ง ๋ถํธ 3.2.1(์ต์ ) ๋ฒ์ ์ ๋ง์ถ์ด ์์กด์ฑ์ด ์ถ๊ฐ๋์๋ ํ๋ก์ ํธ ๊ตฌ์กฐ๋ ์ฌ๋ฌ ๋ ํผ๋ฐ์ค๋ค๊ณผ์ ํธํ์ฑ์ด ๋ง์ง ์์์ ๊ตฌํ์ ์ด๋ ค์์ ๊ฒช์๋ค. ์ด๋ฅผ ์ํ์ฌ ๋ช
์์ ์ผ๋ก Spring Boot 2.6.1 / Spring Security 5.6.1 ๋ก ๋ค์ด๊ทธ๋ ์ด๋ํ์ฌ ์ ์ฒด์ ์ธ ์ฝ๋๋ฅผ ๋ฆฌํฉํ ๋งํ๋ค. ๊ฒฐ๊ณผ์ ์ผ๋ก ์ด์ ์ ์๋ํ๋ ๋ณต์กํ ์ฝ๋ ๋ ํผ๋ฐ์ค๋ค์ด ์ ์์ ์ผ๋ก ์๋ํ์ง ์๊ณ ํ์ ์ด์์ ์๊ฐ์ ์์ํ๋ ๋ก๊ทธ์ธ ๊ตฌํ์ ๊ธฐ๋ณธ ํ์ ์ฝ๊ฒ ๋ฐ๋ผ ๊ตฌํ ํ ์ ์์๋ค.
๋ค์์ ์ต์ด ๊ธฐ๋ณธ ๊ตฌ์กฐ์ด๋ค. ๋ค์ ๊ธ์์ ๊ณง๋ฐ๋ก ๊ฐ์ข
์ด๋
ธํ
์ด์
์ ํ์ฉํ ๋ฐฉ๋ฒ์ผ๋ก ๋ฆฌํฉํ ๋งํ์ฌ ๋ณด๋ค ๊น๋ํ ์ฝ๋๋ก ์ ๋ฆฌํ ๊ฒ์ด์ง๋ง ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์กฐ๋ฅผ ์ฐ์ ๊ธฐ๋กํด๋๋ ค๊ณ ํ๋ค.
build.gradle
์์กด์ฑ ๋ฒ์ ์ ๋ณ๊ฒฝํ ํ์ฌ ์ํ์ build.gradle์ ๋ค์๊ณผ ๊ฐ๋ค. Spring Boot 2.6.1 ์ ๋ง๋๋ก ๋๋จธ์ง ์์กด์ฑ๋ค์ ๋ฒ์ ์ ๋ช
์ํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ถํธ ๋ฒ์ ์ ํธํ๋๋ ๋ฒ์ ๋ค๋ก ์๋ ์ถ๊ฐ๋๋ค.
application-oauth.properties
Google์์ ์ฑ์ ์์ฑํ๊ณ ๋ฐ๊ฒ ๋๋ Client ID, Client Secret ํค๋ฅผ ๋ณด๊ดํด๋์ด์ผ ํ๋ค. ์ด ํ์ผ์ .gitignore๋ฅผ ํตํด ์๊ฒฉ์ ์ฅ์์ ๋
ธ์ถ ๋์ง ์๋๋ก ํ๋๊ฒ์ด ์ข๋ค.
์ ํ์ผ์ ์ปดํ์ผ๋ฌ๊ฐ properties ํ์ผ(์ค์ ํ์ผ) ์์ ์ธ์ ํ ์ ์๋๋ก ๋ฑ๋กํด์ฃผ์ด์ผ ํ๋ค. Boot์์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ฑ๋ก๋๋ ํ์ผ์ธ application.properties ์ ๋ค์๊ณผ ๊ฐ์ด ์ ํ์ผ๋ ์ค์ ํ์ผ์์ ๋ฑ๋กํด์ค๋ค.
[Spring-LDW] ์คํ๋ง ์ํ๋ฆฌํฐ ๊ตฌ๊ธ๋ก๊ทธ์ธ ๊ธฐ๋ฅ ๊ตฌํ