본문 바로가기

Spring Boot4

CORS Preflight 에러 문제 상황JWT를 이용한 로그인 기능을 구현하고 나서 프런트 쪽에서 CORS 에러가 발생하고 서버에서는 JwtInterceptor에서 오류가 발생했다고 나오는 상황이었다. 구현한 JwtAuthenticationInterceptor 코드@Slf4j@RequiredArgsConstructorpublic class JwtAuthenticationInterceptor implements HandlerInterceptor { private final JwtProvider jwtProvider; @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws.. 2024. 6. 22.
JPA 영속성 컨텍스트의 특징 JPA를 이해하는데 가장 중요한 용어는 영속성 컨텍스트(persistence context)이다.영속성 컨텍스트란 '엔티티를 연구 저장하는 환경' 이라는 뜻이다.엔티티 매니저로 엔티티를 저장하거나 조회하면 엔티티 매니저는 영속성 컨텍스트에 엔티티를 보관하고 관리한다.em.persist(member); //persist 메서드는 엔티티 매니저를 사용해서 회원 엔티티를 영속성 컨텍스트에 저장한다  영속성 컨텍스트의 특징JPA는 보통 트랜잭션을 커밋하는 순간 영속성 컨텍스트에 새로 저장된 엔티티를 데이터베이스에 반영하는데 이것을 플러시라 한다. 자세한 내용은 조금 뒤에 알아보자 영속성 컨텍스트가 엔티티를 관리하면 장점이 있다.1차 캐시동일성 보장트랜잭션을 지원하는 쓰기 지연변경 감지지연 로딩1차 캐시 & 동일.. 2024. 6. 20.
[Spring Boot] Swagger 적용하기2 - Parameters & RequestBody 사용할 Annotation[참고] Swagger 2.X AnnotationsExamples and server integrations for generating the Swagger API Specification, which enables easy access to your REST API - swagger-api/swagger-coregithub.com@ParameterOpenAPI 작업의 단일 매개변수를 나타낸다@Schema입력 및 출력 데이터의 정의를 허용 Parameter 설정: @Parametername: 이름description: 파라미터 설명in: 파라미터 위치cookie, header, path, queryex) @Parameter(name = "comment_id", descriptio.. 2023. 8. 5.
[Spring Boot] Swagger 적용하기1 - controller & response 사용할 Annotation Swagger 2.X AnnotationsExamples and server integrations for generating the Swagger API Specification, which enables easy access to your REST API - swagger-api/swagger-coregithub.com@Operation특정 경로에 대한 작업 또는 일반적으로 HTTP 메서드를 설명@ApiResponse작업의 응답@Tag작업 또는 OpenAPI 정의 대한 태그@Schema입력 및 출력 데이터의 정의를 허용@Content특정 미디어의 유형에 대한 스키마 및 예제를 제공 API 설명 추가@Tag(name = "Commnet", description = "댓글 관련.. 2023. 8. 3.