에러 로그 원문원인은 todo의 service 클래스TodoService 클래스에서 해당 메서드에 @Transactional 이 없거나, 클래스 전체에 @Transactional(readOnly = true)가 선언되어 있기 때문.🤔@Transactional(read
일단 User 엔티티에 nickname을 추가해준다.Entity + 아래 생성자들에 nickname추가 해서 AuthUser랑 관련된 모든 클래스들 바꿔주기로 하였다.해서,생성자를 바꾸고fromAuthUser 메서드 수정을 위해 nickname을 사용할 수 있도록 ni
테스트 코드에서 에러(InvaildRequestException)가 발생했을 때 HTTP 400(Bad Request)이 반환 되어야 하지만테스트에서 200을 원하고 있어 발생하는 오류이다.애초에 .isOk()를 통해 200 OK를 기대했다 → 잘못된 설정내가 해결한
컨트롤러 코드“실행 전”에 맞추어서 진행을 하면 된다. 그리고 애초에 UserController가 아니고 UserAdminController이다.@After → @Before로 변경 (실행 전 동작)UserController.getUser → UserAdminContr
위 코드를 추가하면 JPA에서 영속성 전이(Persistence Cascade) 기능이 활성화된다.즉, 부모 엔티티(Todo)를 저장할 때(영속화할 때), 연관된 자식 엔티티(Manager)도 자동으로 함께 저장된다.모든 자식 엔티티가 자동 저장되므로, 의도치 않은 데
해당 repository 코드N+1 문제를 해결하는 건 여러가지 방법이 있지만 Fetch Join으로 해결하였다.join 옆에 fetch를 붙여주자.해결 후 repository 코드
QueryDSL에 대해서는 추후에 더 공부가 필요해 보인다.해당 코드build.gradle에 해당(QueryDSL) 의존성 주입.Q클래스가 생성이 되지 않는다.분명 gradle이 설치되어 있는데, 터미널에 gradle wrapper를 해도 오류가 발생한다.찾아보니까 g
REST API + JWT 환경에서 CSRF 보호를 비활성화하는 이유, 그 외 설정(formLogin, httpBasic, 세션)의 비활성화의 이유.
의존성 추가(build.gradle)OncePerRequestFilter는 "한 요청당 필터가 한 번만 실행되도록 보장"하는 Spring의 특수 필터이다.이 클래스를 상속받으면 doFilterInternal 메서드를 오버라이드해야 한다.doFilter 메서드는 이미 O
날씨 조건: 있을 수도, 없을 수도 있다 → 선택적 파라미터를 사용 기간의 시작과 끝 날짜가 있을 수도, 없을 수도 있다. → 얘도 선택적 파라미터를 사용→ @RequestParam(required = false)를 사용하면 선택적 파라미터를 받는다.꼭 require