본문 바로가기
반응형

개발/Spring FW22

[Spring FW] Interceptor Spring Framework에서 Interceptor는 웹 애플리케이션에서 요청 처리 과정에 특정 작업을 수행하도록 하는 메커니즘입니다. 이는 AOP(Aspect-Oriented Programming)의 개념과 유사하며, 주로 요청의 전처리(pre-processing)나 후처리(post-processing)를 담당합니다. Interceptor는 핸들러 매핑(HandlerMapping)과 연계하여 사용되며, 컨트롤러(Controller)가 요청을 처리하기 전후에 특정 작업을 수행할 수 있게 해줍니다. Interceptor를 구현하고 사용하기 위한 주요 단계는 다음과 같습니다: Interceptor 구현 HandlerInterceptor` 인터페이스를 구현하는 클래스를 만듭니다. 이 인터페이스에는 주로 `.. 2023. 12. 9.
Spring에서 ApplicationEvent 처리하기 Spring Framework의 `ApplicationEvent` 클래스는 Spring의 이벤트 발행 및 처리 메커니즘의 핵심입니다. 이 메커니즘을 통해 애플리케이션 내에서 이벤트를 발행하고, 이를 처리하는 리스너들을 등록할 수 있습니다. `ApplicationEvent`와 관련된 기능은 애플리케이션의 결합도를 낮추고, 코드의 모듈화를 증진시키는 데 유용합니다. ApplicationEvent 클래스 `ApplicationEvent`는 Java의 `java.util.EventObject`를 확장한 클래스입니다. Spring 4.2부터는 `ApplicationEvent`를 상속받지 않고, 어떠한 객체도 이벤트로 발행할 수 있습니다. 이벤트 발행 이벤트는 `ApplicationEventPublisher` 인터.. 2023. 11. 29.
스프링 트랜잭션 스프링 트랜잭션은 스프링 프레임워크에서 데이터베이스 작업을 관리하기 위한 메커니즘입니다. 트랜잭션은 일련의 데이터베이스 작업들이 하나의 논리적 단위로 묶여서 수행되도록 보장하는 것으로, 모든 작업이 성공적으로 완료되거나, 하나라도 실패할 경우 이전 상태로 롤백되어 데이터의 일관성을 유지하는 것을 목표로 합니다. 스프링 트랜잭션의 정의를 좀 더 자세히 살펴보면 다음과 같습니다: ACID 속성 준수 스프링 트랜잭션은 데이터베이스 트랜잭션의 기본 원칙인 ACID(Atomicity, Consistency, Isolation, Durability)를 준수합니다. 이는 각각 원자성, 일관성, 격리성, 지속성을 의미하며, 트랜잭션이 안전하고 신뢰할 수 있는 방식으로 처리되도록 합니다. 원자성(Atomicity) 트랜.. 2023. 11. 26.
Feign Client 스프링 클라우드의 Feign 클라이언트는 마이크로서비스 간의 HTTP 기반 통신을 간소화하기 위해 사용되는 선언적 REST 클라이언트입니다. Feign은 스프링 클라우드 넷플릭스 스택의 일부로, 서비스-투-서비스 호출을 더 쉽고 가독성 있게 만들어 줍니다. Feign의 주요 특징과 장점은 다음과 같습니다: 선언적 REST 클라이언트 Feign을 사용하면 복잡한 HTTP 클라이언트 코드를 작성할 필요 없이, 인터페이스와 어노테이션을 이용하여 간단하게 HTTP 요청을 정의할 수 있습니다. 인터페이스 기반 설계 Feign 클라이언트는 Java 인터페이스에 어노테이션을 추가함으로써 HTTP 요청을 정의합니다. 이 방법은 코드의 가독성을 높이고 유지보수를 용이하게 합니다. 통합된 로드 밸런싱 Feign은 스프링 .. 2023. 11. 25.
반응형