일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- db
- 자바
- Greedy
- 알고리즘
- kotlin
- JDBC
- 김영한
- Android
- SpringBoot
- jpa
- spring
- Exception
- 스프링 핵심 기능
- 스프링 핵심 원리
- 백준
- 그리디
- AOP
- http
- pointcut
- 스프링
- springdatajpa
- QueryDSL
- Servlet
- JPQL
- Proxy
- Spring Boot
- 인프런
- java
- Thymeleaf
- transaction
- Today
- Total
목록ProxyFactory (2)
개발자되기 프로젝트
어드바이저는 하나의 포인트컷과 하나의 어드바이스를 가지고 있다. 프록시 팩토리를 통해 프록시를 생성할 때 어드바이저를 제공하면 어디에 어떤 기능을 제공할 지 알 수 있다. 1. 예제코드 public class AdvisorTest { @Test void advisorTest1(){ ServiceInterface target = new ServiceImpl(); ProxyFactory proxyFactory = new ProxyFactory(target); DefaultPointcutAdvisor advisor = new DefaultPointcutAdvisor(Pointcut.TRUE, new TimeAdvice()); proxyFactory.addAdvisor(advisor); ServiceInterf..
1. 동적 프록시를 사용할 때의 문제점 인터페이스가 있는 경우에는 JDK 동적 프록시를 적용하고, 그렇지 않은 경우에는 CGLIB를 적용하려면 어떻게?? 두 기술을 함께 사용할 때 부가 기능을 제공하기 위해 JDK 동적 프록시가 제공하는 InvocationHandler 와 CGLIB가 제공하는 MethodInterceptor 를 각각 중복으로 ?? 특정 조건에 맞을 때 프록시 로직을 적용하는 기능도 공통으로 제공되었으면? 2. 의문?? Q: 인터페이스가 있는 경우에는 JDK 동적 프록시를 적용하고, 그렇지 않은 경우에는 CGLIB를 적용하려면?? 스프링은 유사한 구체적인 기술들이 있을 때, 그것들을 통합해서 일관성 있게 접근할 수 있고, 더욱 편리하게 사용할 수 있는 추상화된 기술을 제공한다. 스프링은 ..