본문 바로가기

IT/spring93

스프링 Before 어드바이스 스프링 AOP(Aspect-Oriented Programming)에서 Before 어드바이스는 Advice(관점)의 일종으로, 타겟 메서드 실행 전에 실행되는 로직을 구현하는 역할을 합니다. 스프링 Before 어드바이스의 개념과 사용 방법, 그리고 예시를 통해 자세히 알아보겠습니다. Before 어드바이스란? Before 어드바이스는 타겟 메서드가 실행되기 전에 실행되는 코드 블록입니다. 주로 메서드 실행 이전에 필요한 전처리 작업을 수행하는 데 사용됩니다. 예를 들어, 인증, 로깅, 트랜잭션 관리 등의 공통적인 기능을 Before 어드바이스로 구현할 수 있습니다. Before 어드바이스의 구현 방법 스프링에서 Before 어드바이스를 구현하는 방법은 다음과 같습니다. Aspect 클래스 생성: Bef.. 2023. 6. 19.
스프링 AOP Join Point 스프링 AOP(Aspect-Oriented Programming)에서 Join Point는 관점 지향 프로그래밍에서 특정 지점을 가리키는 개념입니다. 스프링 AOP Join Point의 의미와 사용 방법, 그리고 예시를 통해 자세히 알아보겠습니다. Join Point란? Join Point는 애플리케이션 실행 중 특정한 지점을 나타냅니다. 스프링 AOP에서는 메서드 실행 시점이 Join Point가 될 수 있습니다. Join Point는 Advice(관점)가 적용될 수 있는 위치를 의미하며, Advice는 Join Point에서 실행됩니다. 예를 들어, 메서드 호출 시점, 예외 발생 시점, 메서드 반환 시점 등이 Join Point가 될 수 있습니다. Join Point 정보 Join Point에서는 다.. 2023. 6. 18.
스프링 AOP (Aspect-Oriented Programming) 스프링 AOP(Aspect-Oriented Programming)은 스프링 프레임워크의 핵심 기능 중 하나로, 애플리케이션에서의 관심사(Concern)를 분리하여 모듈화하는 프로그래밍 기법입니다. 스프링 AOP의 개념과 특징, 그리고 예시를 통해 자세히 알아보겠습니다. AOP의 개념 AOP는 관점 지향 프로그래밍의 약자로, 애플리케이션에서 발생하는 공통 관심사를 모듈화하고 핵심 로직과 분리하여 관리합니다. 이를 통해 코드의 재사용성, 가독성, 유지보수성을 향상시킬 수 있습니다. AOP는 주로 메서드 호출, 예외 처리, 로깅, 트랜잭션 관리 등과 같은 공통적인 작업을 처리하는 데 사용됩니다. 스프링 AOP의 특징 Proxy 기반: 스프링 AOP는 프록시 패턴을 기반으로 동작합니다. 핵심 로직을 갖는 객체를.. 2023. 6. 17.
스프링 Service 클래스 스프링 프레임워크에서 Service 클래스는 비즈니스 로직의 구현을 담당하는 중요한 역할을 합니다. 스프링 Service 클래스의 역할과 특징에 대해 설명하고, 예시를 통해 자세히 알아보겠습니다. Service 클래스의 역할 Service 클래스는 비즈니스 로직을 구현하고 제공하는 역할을 합니다. 주로 Repository(DAO)와 컨트롤러(Controller) 사이에서 중개자 역할을 수행하며, 비즈니스 요구사항에 따라 필요한 작업을 수행합니다. 이는 데이터 액세스, 외부 API 호출, 데이터 가공 및 변환 등 다양한 비즈니스 로직을 포함할 수 있습니다. Service 클래스의 특징 트랜잭션 관리: Service 클래스는 트랜잭션 관리를 담당합니다. 비즈니스 로직 실행 시 데이터베이스 상태를 일관되게 유.. 2023. 6. 16.
스프링 서비스(service) 인터페이스 스프링 프레임워크에서 서비스(Service) 인터페이스는 비즈니스 로직을 정의하고 구현체와의 결합도를 낮추는 역할을 수행합니다. 스프링 서비스 인터페이스의 역할과 필요성에 대해 설명하고, 예시를 통해 보다 자세히 알아보겠습니다. 서비스 인터페이스의 역할 서비스 인터페이스는 비즈니스 로직을 추상화하여 외부에 노출하는 역할을 합니다. 주로 컨트롤러(Controller)와 데이터 액세스 객체(DAO) 사이에서 중개자 역할을 수행하며, 비즈니스 로직의 실행을 담당하는 메서드를 정의합니다. 이는 각 계층 간의 결합도를 낮추고 의존성을 관리하는 데 도움을 줍니다. 서비스 인터페이스의 필요성 서비스 인터페이스를 사용하는 가장 큰 이유는 인터페이스를 통한 추상화입니다. 인터페이스를 정의함으로써 구현체와의 결합도를 낮출.. 2023. 6. 16.
스프링 Value Object(VO) 클래스 스프링 프레임워크에서 Value Object(VO) 클래스는 애플리케이션에서 사용되는 데이터를 캡슐화하고 전달하는 데 사용되는 객체입니다. 스프링 Value Object 클래스의 역할과 특징에 대해 설명하고, 예시를 통해 보다 자세히 알아보겠습니다. Value Object의 역할 Value Object는 불변성(Immutability)과 값의 독립성을 가지는 객체로, 주로 데이터 전달이나 데이터 구조를 표현하는 데 사용됩니다. Value Object는 데이터를 담는 컨테이너 역할을 하며, 논리적인 개념을 구체화하여 표현합니다. 이러한 특성으로 인해 Value Object는 애플리케이션의 도메인 모델(Domain Model)에서 중요한 역할을 수행합니다. Value Object의 특징 불변성(Immutab.. 2023. 6. 16.
스프링 DAO(Data Access Object) 클래스 스프링 프레임워크에서 DAO(Data Access Object) 클래스는 데이터베이스와의 상호작용을 담당하는 클래스입니다. 이 클래스는 데이터의 영속성(persistence)을 관리하며, 데이터베이스에 대한 CRUD(Create, Read, Update, Delete) 작업을 수행합니다. 스프링 DAO 클래스의 역할과 구현 방법에 대해 자세히 알아보고, 예시를 통해 설명하겠습니다. DAO 클래스의 역할 DAO 클래스의 주요 역할은 데이터베이스와의 상호작용을 추상화하는 것입니다. DAO 클래스는 데이터베이스 연결, SQL 쿼리 실행, 결과 처리 등을 담당합니다. 이를 통해 비즈니스 로직과 데이터 액세스를 분리하여 애플리케이션의 유지보수성과 확장성을 향상시킵니다. DAO 클래스의 구현 방법 스프링에서 DAO.. 2023. 6. 16.
스프링 @Resource 스프링 프레임워크에서 @Resource는 의존성 주입을 위해 사용되는 애노테이션입니다. 이 애노테이션은 @Autowired와 유사한 기능을 제공하지만, @Autowired와는 약간의 차이점이 있습니다. @Resource에 대해 자세히 알아보고, 실제 예시를 통해 설명하겠습니다. @Resource 애노테이션 @Resource는 스프링 프레임워크에서 의존성 주입을 수행하는 데 사용되는 애노테이션입니다. 이 애노테이션은 자바 표준인 JSR-250의 일부로 정의되어 있으며, @Autowired와 마찬가지로 필드, 메서드, 생성자 등에 적용할 수 있습니다. @Resource 사용법 @Resource를 사용하려면 주입할 빈의 이름을 지정해야 합니다. 기본적으로 @Resource는 이름을 기반으로 빈을 찾아 의존성 .. 2023. 6. 15.