@Override
public <T> ComponentProxyHandler<T> createProxy(Class<?> targetClass) {
JdkProxyFactory proxyFactory = proxyFactories.get(targetClass);
if (proxyFactory == null) {
proxyFactory = new DefaultJdkProxyFactory(targetClass);
proxyFactories.put(targetClass, proxyFactory);
}
return new JdkAopProxyHandler<T>(proxyFactory, invocationFactory);
}