cglib 라이브러리를 사용하면 일반 자바프로젝트에서도 AOP 기능을 간단하게 구현 할 수 있다.
메이븐 기준으로 cglib 를 다운로드 받는다.
<dependency>
<groupId>cglib</groupId>
<artifactId>cglib</artifactId>
<version>3.2.7</version>
</dependency>
그리고 MethodInterceptor라는 클래스를 상속받아서 사용하면 끝.
예제 코드는 추상클래스를 만들었으며, 해당 추상클래스를 일반 클래스에서 상속받으면 된다.
import java.lang.reflect.Method;
import net.sf.cglib.proxy.MethodInterceptor;
import net.sf.cglib.proxy.MethodProxy;
/**
* 모든 DAO에 적용되는 추상 클래스
*/
public abstract class MyInterceptor implements MethodInterceptor{
/**
* AOP 같은 메소드
*/
@Override
public Object intercept(Object object, Method method, Object[] args, MethodProxy methodProxy) throws Throwable {
Object resultValue = null;
//if, else 같은거로 메소드 실행 시 조건을 커스터마이징 하면 된다.
resultValue = methodProxy.invokeSuper(object, args);
return resultValue;
}
반응형
'Java(자바)' 카테고리의 다른 글
파일 복사하기, Blob데이터를 파일로 만들기 (0) | 2019.04.25 |
---|---|
Java로 File 만든 날짜 보기 (0) | 2019.04.25 |
jsch 사용법(ssh 연결) (0) | 2019.04.25 |
자바 함수형 프로그래밍 (0) | 2019.04.25 |
Java에서 배열형태 문자를 배열로 만들기 (0) | 2019.04.25 |
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)
댓글