프로젝트23 EntityListeners EntityListeners 생성 · 수정일, 생성 · 수정자 같은 요소들은 엔티티에 거의 필수적으로 들어가는 요소들이다. 특히 생성 · 수정일은 거의 모든 엔티티에 들어가는 요소라고 해도 과언이 아니다. 하지만 DB에 엔티티가 생성, 수정될 때마다 해당 값을 일일이 넣어주는 것은 매우 반복적이고 지루한 일이다. EntityListeners는 Jpa 엔티티에서 이벤트가 발생할 때마다 콜백을 처리할 수 있게 해 준다. 이는 생성, 수정과 관련된 요소들을 공통된 메서드로 처리할 수 있음을 뜻한다. pongGame 프로젝트에서는 위와 같이 엔티티에서 반복되는 요소들에 특정 이벤트가 발생했을 때 EntityListeners를 통해서 자동적으로 처리하도록 한다. 또한 생성 · 수정일, delete 요소를 담은 클.. 2022. 4. 28. LoginAccountIdArgumentResolver LoginAccountIdArgumentResolver ArgumentResolver가 현재 로그인한 Account의 Id를 컨트롤러의 파라미터로 받을 수 있도록 한다. 이를 구현하기 위해 다음과 같은 어노테이션와 클래스를 생성한다. ● @LoginAccountId : LoginAccountIdArgumentResolver 사용시, 파라미터에 적용될 어노테이션 ● LoginAccountIdArgumentResolver : 컨트롤러의 파라미터에 현재 로그인한 Account의 Id를 반환하는 클래스 1. LoginAccountIdArgumentResolver ■ LoginAccountId 어노테이션 기반으로 파라미터를 지정해주기 때문에 어노테이션을 생성한다. [LoginAccountId] import jav.. 2022. 4. 28. FileProcessor FileProcessor 해당 프로젝트에서 파일(주로 이미지 파일) 이름을 편집하고 저장하는 등의 역할을 하는 클래스 1. FileProcessor ■ FileProcessor [FileProcessor] import com.hipo.exception.IllegalRequestException; import org.springframework.http.MediaType; import org.springframework.stereotype.Component; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.IOException; import java.util.UUID; @Component p.. 2022. 4. 28. Spring Security, JWT, 인증, 인가 Spring Security, JWT, 인증, 인가 Spring Security를 베이스로 JWT를 사용해서 해당 프로젝트의 인증과 인가를 구현한다. 이와 관련돼서 생성된 클래스는 다음과 같다. ● SecurityConfig : Spring Security관련 설정 ● UserAccount : Spring Security에서 인증 요소(principal)로 사용되는 객체. Userdetails를 상속받고 Account의 정보를 갖는다. ● PrincipalDetailService : 인증 시, DB에서 Account를 찾고 UserAccount로 반환하는 loadUserByUsername 메서드를 갖는다. ● JwtAutienticationFilter : jwt를 사용해서 인증 처리 ● JwtAutior.. 2022. 4. 18. 이전 1 2 3 4 5 6 다음