💐 Spring

💐 Spring

H2 인메모리 DB 설정하기 (Spring boot)

Spring H2 inmemory DB 사용하는 법 Spring boot에서 h2 인메모리 DB 사용하는 법을 알아보자. 의존성 추가 com.h2database h2 runtime application.yml 설정 spring: h2: console: enabled: true path: /h2-console #(default 설정안해도 자동적용) datasource: url: jdbc:h2:mem:todoItem 이제 http://localhost:8080/h2-console 로 접속하게 되면, h2 콘솔을 볼 수 있다. saved setting: Generic H2 (Embedded) JDBC URL: jdbc:h2:mem:todoItem 당연히 인메모리 이기 때문에 프로젝트가 종료되면, 내부 데이터는..

💐 Spring/Spring in Action

Jdbc, JdbcTemplate, Spring Data Jpa에 대해서

Goal 스프링 JdbcTemplate 사용해보기 SimpleJdbcInsert를 사용해서 데이터 추가해보기 스프링 데이터를 사용해서 JPA 선언하고 사용해보기 순수 JDBC Jdbc란, Java DataBase Connectivity, 데이터베이스를 연결하기 위한 API이다. Jdbc를 이용해 select 쿼리 작성해보면 아래와 같다. @Override public Account findById(String id) { Connection conn = null; PreparedStatement st = null; ResultSet rs = null; String sql = "select id, name from Account where id = ?"; try { conn = datasource.getCo..

💐 Spring

Spring error - The dependencies of some of the beans in the application context form a cycle

의존성 순환 참조 순환 참조 에러는 둘 이상의 Bean이 생성자를 통해 빈을 주입받으려고 할 때 생긴다. securityConfig에 있는 TokenProvider가 AccountService 빈을 주입받게 되고, 또 AccountService에서는 SecurityConfig.passwordEncoder를 참조하고 있어서 계속 순환 참조가 일어나게 되는 것이다. 근데 이 경우에는 SecurityConfig -> TokenProvider -> AccountService 순으로 참조하지만, TokenProvider는 InitializingBean을 implements 하고 있기 때문에 AccountService가 있지 않은 상황에서 AccountService를 주입받으려고 하다보니 오류가 생기는 것 같았다...

💐 Spring/Spring Security

12. JWT 토큰 Authorization을 위한 커스텀 필터 생성

이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다. 로그인 요청이 오면 사용자 인증 후 JWT 토큰을 생성하여 클라이언트에게 응답해줬습니다. 이제 사용자는 매번 로그인을 하는 것이 아니라, 이전에 발급 받은 JWT 토큰을 들고 서버로 요청을 하면 서버는 해당 JWT 토큰을 검증하여 유효한 토큰인지 확인 후 클라이언트 요청을 처리해주면 됩니다. 이번 시간에는 JWT 토큰을 검증할 수 있는 Filter를 생성해보도록 하겠습니다. BasicAuthenticationFilter 상속 헤더에 Authorization : Basic *** 방식으로 인증을 시도하면 BasicAuthenticationFilter에서 해당 토큰을 검증하여 인증을 처리하는데, 우리는 Basic 방식이 아닌, JWT..

💐 Spring/Spring Security

11. JWT 로그인을 위한 UsernamePasswordAuthenticationFilter 상속

이 포스트는 데어 프로그래밍님의 유튜브 강의를 듣고 나서 정리한 글입니다. UsernamePasswordAuthenticationFilter에 대해서는 아래 포스팅을 참조하시길 바랍니다. UsernamePasswordAuthenticationFilter 동작 방식에 대해서 SpringSecurity Filterchain 에는 여러 종류에 필터가 존재하지만, 이번 시간에는 로그인 인증을 처리하는 UsernamePasswordAuthenticationFilter에 대해서 알아보겠습니다. Login 인증 로직 flow POST "/login".. iseunghan.tistory.com 로그인 요청을 처리하기 위해서는 SpringSecurityFilterChain 중에 로그인 인증을 처리하는 필터인 Userna..

💐 Spring/Spring Security

UsernamePasswordAuthenticationFilter 동작 방식에 대해서

SpringSecurity Filterchain 에는 여러 종류에 필터가 존재하지만, 이번 시간에는 로그인 인증을 처리하는 UsernamePasswordAuthenticationFilter에 대해서 알아보겠습니다. Login 인증 로직 flow POST "/login" 으로 요청을 보내면? Postman으로 body에 username, password를 넣고 "/login"으로 요청을 보내면, UsernamePasswordAuthenticationFilter가 요청을 낚아채고 username, password를 검증합니다. 그 과정에서 우리가 오버라이딩한 UsernamePasswordAuthenticationFilter.attemptAuthentication 메소드가 호출이 됩니다. POST로 요청이 왔..

iseunghan
'💐 Spring' 카테고리의 글 목록 (3 Page)