반응형

spring 14

세무민의 코딩일기 : Spring WebClient에 대해 알아보자

안녕하세요 세기무민입니다. RestTemplate deprecated 된다는 걸 알고 있었으나, 따로 WebClient에 대한 포스팅을 한 적이 없던거 같아서오랜만에 한번 포스팅을 해보려고 합니다.1. Spring WebClient?Spring 프레임워크에서 제공하는 비동기 및 논블로킹 방식의 반응형 HTTP 클라이언트를 의미비동기와 논블로킹을 통해 대규모 트래픽을 효율적으로 처리가 가능하며 MSA 환경 혹은 고성능 어플리케이션에서 유용함Spring WebFlux 모듈의 일부이며, 기존 Restemplate를 대체하기 위해 설계됨 2. Spring WebClient vs RestTemplate특징WebClientRestTemplate동작 방식비동기, 논블로킹동기, 블로킹기반 기술WebFlux (반응형)S..

[오류] Correct the classpath of your application so that it contains compatible versions of the classes org.springframework.boot.autoconfigure.web.embedded.TomcatWebServerFactoryCustomizer and org.apache.coyote.AbstractProtocol 문제 해결

오류Correct the classpath of your application so that it contains compatible versions of the classes org.springframework.boot.autoconfigure.web.embedded.TomcatWebServerFactoryCustomizer and org.apache.coyote.AbstractProtocolTomcatWebServerFactoryCustomizer와 coyote.abstractProtocol 간 버전 충돌에 따른 문제     tomcat Version Upgrade 수행build.gradle 아래 내용 추가하였음ext['tomcat.version'] = '11.0.2' 근데 또 다른 문제가 발생하게 ..

[오류] java.lang.ClassNotFoundException: org.hibernate.dialect.Oracle10gDialect 해결

현 상황 및 해결 방안application.ymljpa: database-platform : org.hibernate.dialect.Oracle10gDialect이전에 사용한 Spring Boot를 3.2.0 버전을 사용하고 있었다. 3.3.0 버전으로 올리면서 발생된 문제였고, 이에 따라 Spring Version 변경에 대한 이슈라고 생각했다. 또한 오류 메세지를 해석해보면 말 그대로 Oracle10gDialect 클래스를 찾을 수 없다는 의미인데알고보니 Spring Boot 3.2.x 이상 버전부터 명시적인 Dialect 설정을 할 경우 위와 같은 문제가 발생한다고 한다.- https://github.com/spring-projects/spring-framework/issues/31889 내용..

[Spring] Composite id class must implement Serializable 오류 해결

안녕하세요 세기무민입니다. 오랜만에 오류 해결 포스팅으로 찾아왔습니다. 오류 현상Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Composite id class must implement Serializable: ~~~ 위의 오류가 발생하는 원인은 기본키를 복수로 지정했을 때 직렬화를 해야한다는 의미입니다. 보통 키를 복수로 지정할 경우 복합키를 사용하게 되는데 복합키의 경우도 직렬화가 필요하다. JPA는 엔티티를 영속성 컨텍스트와 2차 캐시에 저장하여 관리하는데 복합키를 전송하거나 저장하려면 직렬화가 필요 분산 처리 시스템(클러스터링 환경)에서 활용이 가능한..

[Spring] Utility Class에 대해서는 Static Method로 구성하는 것이 좋을까?

안녕하세요 세기무민입니다. 이번 포스팅은 Utility Class에 대해서 Static Method vs @Component 중 어떻게 구성하는 것이 조금 더 효율적인지에 대해 의견을 정리해보려고 합니다. 서론회사에서 오프라인 코드 리뷰 중 Utility Class에 대해 Static Method가 효율적일지, @Component가 조금 더 효율적일 지 검토를 해보기로 하였고 이에 따라 개인적인 궁금증에 따라 서치를 시작했다. Static Method 말 그대로 정적 매서드로 인스턴스 생성 없이 호출이 가능하다. 주로 Utiility Class와 같이 재사용이 가능한 매서드를 제공하기 위해 사용된다. @Componet 비즈니스, 서비스 로직과 같이 어플리케이션 로직 구현 시 사용되는 어노테이션이며 의존성..

반응형