🚫 에러 상황 Redis 내의 Refresh token 값을 다루기 위해 CrudRepository 를 사용하고, RDBMS 내의 데이터를 다루기 위해 JpaRepository 를 사용했습니다. 프로젝트를 실행하면 뜨는 여러 로그 중 에러는 아니지만, 반갑지 않은 INFO 로그가 2개의 영역으로 나뉘어 7개 정도 반복되는 것을 확인했습니다. 엔티티 클래스 수 만큼 반복 되었고, 아래처럼 로그가 출력됐습니다. A 영역: Spring Data JPA 2023-06-18 19:10:30.731 INFO 4986 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repos..
🤔 적용 이유 프론트엔드 개발자는 백엔드 개발자가 작성한 api 문서를 보고 api 를 매핑합니다. 문서를 작성하는 것은 노동력이 들어가는 것이고, 사람이 작성하기 때문에 변경된 사항을 업데이트를 하지 않는 경우도 존재합니다. spring-rest-docs 는 테스트 코드를 작성해야 하고, 빌드 시 api 문서가 자동으로 생성됩니다. 테스트 코드를 작성하면서 검증된 api 문서를 자동으로 생성할 수 있다! vs Swagger Swagger 도 문서화를 위해 많이 사용된다고 했습니다. 보다 UI 가 깔끔해보이는 장점이 있었습니다. spring-rest-docs 와 달리 테스트 코드가 의무가 아니므로 빠른 시간 내의 문서를 작성할 때 용이할 거라 생각이 듭니다. 단점으로는 컨트롤러 코드 주위에 문서를 위한 ..
🚫 에러 상황 builder 패턴을 사용하여 유저 인스턴스를 생성했고, userGroups 필드(List)에 데이터를 추가하자 NullPointException 이 발생했다. java.lang.NullPointerException: Cannot invoke "java.util.List.add(Object)" because the return value of "user.domain.User.getUserGroups()" is null User 엔티티 @Entity @Getter @Builder @NoArgsConstructor @AllArgsConstructor public class User { ... @OneToMany(mappedBy = "user") private List userGroups = n..