전체 글(579)
-
Declaring an Aspect
@AspectJ 지원이 활성화된 상태에서, 애플리케이션 컨텍스트에 정의된 빈 중, 클래스에 @Aspect 애노테이션이 있는 @AspectJ aspect은 Spring에 의해 자동으로 감지되며 Spring AOP를 구성하는 데 사용됩니다. 다음 두 가지 예시는 크게 유용하지 않은 aspect를 정의하는 데 필요한 최소 단계를 보여줍니다.첫 번째 예시에서는 애플리케이션 컨텍스트에 있는 일반적인 빈 정의가 @Aspect 애노테이션이 있는 빈 클래스를 가리키는 방법을 보여줍니다: 두 번째 예시에서는 @Aspect 애노테이션이 달린 NotVeryUsefulAspect 클래스 정의를 보여줍니다:package com.xyz;import org.aspectj.lang.annotation.Aspect;@Aspec..
2024.11.17 -
Enabling @AspectJ Support
@AspectJ 방식의 Aspect를 Spring 구성에서 사용하려면, Spring이 @AspectJ Aspect를 기반으로 AOP를 구성하고, 어드바이스 메서드에 정의된 포인트컷 조건에 따라, Bean의 메서드가 AOP 적용 대상인지 판단하여 , 자동으로 프록시를 생성하는 기능을 활성화해야 합니다. 여기서 자동 프록시 생성(auto-proxying)이란, Spring이 어떤 빈의 메서드가 어드바이스 메서드에 정의된 포인트컷에 매칭된다고 판단하면, 해당 빈에 대해 자동으로 프록시를 생성하여 메서드 호출을 가로채고, 필요한 시점에 어드바이스가 실행되도록 보장하는 것을 말합니다.@AspectJ 지원은 XML 또는 Java 기반 구성으로 활성화할 수 있습니다. 두 경우 모두 애플리케이션의 클래스패스에 Aspe..
2024.11.17 -
Spring instrument
Spring Instrument란?Spring Instrument는 Spring 프레임워크에서 제공하는 Java Instrumentation API 기반의 Java Agent로, Spring 애플리케이션에서 클래스를 동적으로 조작할 수 있도록 도와주는 모듈이다.Spring Instrument는 Spring AOP 및 Load Time Weaving(LTW)과 함께 사용되며, 특정 기능(예: AspectJ)에서 런타임에 클래스를 수정하거나 프록시를 생성하는 기능을 제공한다.1. Spring Instrument의 주요 역할Spring Instrument 모듈은 Spring 애플리케이션의 동적 바이트코드 조작을 지원하는 역할을 한다.📌 주요 역할Spring AOP 및 Load Time Weaving(LTW)..
2024.11.17 -
Programmatic Creation of @AspectJ Proxies
또는 를 사용하여 구성에서 aspect를 선언하는 것 외에도, 타겟 객체를 어드바이스하는 프록시를 프로그래밍 방식으로 생성할 수도 있습니다. Spring AOP API에 대한 전체 자세한 내용은 다음 장을 참조하세요. 여기서는 @AspectJ aspect를 사용하여 자동으로 프록시를 생성하는 기능에 중점을 두고 설명하겠습니다.org.springframework.aop.aspectj.annotation.AspectJProxyFactory 클래스를 사용하여 하나 이상의 @AspectJ aspect에 의해 어드바이스된 타겟 객체에 대한 프록시를 생성할 수 있습니다. 이 클래스의 기본 사용법은 매우 간단하며, 다음 예제가 이를 보여줍니다:// 주어진 타겟 객체에 대한 프록시를 생성할 수 있는 팩토리를 생성합니다..
2024.11.15 -
Resources
이 챕터에서는 Spring이 리소스를 처리하는 방법과 Spring에서 리소스를 다루는 방법에 대해 다룹니다.Introduction자바의 표준 java.net.URL 클래스와 다양한 URL 접두사에 대한 표준 핸들러는 저수준 리소스에 대한 모든 접근에 충분히 적합하지 않은 경우가 종종 있습니다. 예를 들어, 클래스패스에서 가져와야 하는 리소스나 ServletContext를 기준으로 상대적인 리소스에 접근하기 위한 표준화된 URL 구현이 없습니다. 특수한 URL 접두사(예: http:와 같은 기존 핸들러와 유사)에 대한 새로운 핸들러를 등록하는 것은 가능하지만, 이는 일반적으로 매우 복잡하며, URL 인터페이스는 리소스의 존재 여부를 확인하는 메서드와 같은 일부 필요한 기능이 여전히 부족합니다.The Res..
2024.11.15 -
Spring IoC
Spring의 IoC(Inverse of Control) 컨테이너에 대해 다룹니다.Section SummaryIntroduction to the Spring IoC Container and BeansContainer OverviewBean OverviewDependenciesBean ScopesCustomizing the Nature of a BeanBean Definition InheritanceContainer Extension PointsAnnotation-based Container ConfigurationClasspath Scanning and Managed ComponentsUsing JSR 330 Standard AnnotationsJava-based Container Configuratio..
2024.11.15