본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


AOP2

Spring 또는 전자정부, AOP가 되지 않는 경우 스프링을 사용하는 주된 이유중 하나는 바로 AOP라는 강력한 기능 때문이다. 전자정부에서도 이러한 AOP를 사용해서 중복되는 작업을 분리하는데.. 간혹 AOP설정을 아무리 잘 했다고 생각하더라도 되지 않는 경우가 발생한다. 예를들어..컨트롤러에는 안걸리면서 인터페이스를 상속받은 서비스에만 걸리는 경우를 만나기도한다. 그 이유는..스프링 AOP는 2가지 방식이 존재한다. JDK Dynamic Proxy, CGLIB를 이용하여 프록시를 생성하는 방식이다. 돌아다니는 소스코드나 예제는 JDK Dynamic Proxy방식을 활용하는 경우가 많은데.. 해당 구현 방식은 인터페이스를 기반으로 프록시 객체를 생성하기 때문에 인터페이스에 정의되어 있지 않은 메서드에 대해서는 AOP가 적용되지 않는다. 그럴경우에는..C.. 2019. 4. 29.
AOP를 일반자바 프로젝트에서도 해보자 cglib 라이브러리를 사용하면 일반 자바프로젝트에서도 AOP 기능을 간단하게 구현 할 수 있다. 메이븐 기준으로 cglib 를 다운로드 받는다. cglib cglib 3.2.7 그리고 MethodInterceptor라는 클래스를 상속받아서 사용하면 끝. 예제 코드는 추상클래스를 만들었으며, 해당 추상클래스를 일반 클래스에서 상속받으면 된다. import java.lang.reflect.Method; import net.sf.cglib.proxy.MethodInterceptor; import net.sf.cglib.proxy.MethodProxy; /** * 모든 DAO에 적용되는 추상 클래스 */ public abstract class MyInterceptor implements MethodInterc.. 2019. 4. 25.