# 6.6使用ProxyFactory创建AOP代理

用Spring编程创建AOP代理很容易。这允许你使用SpringAOP而不依赖SpringIOC。

由目标对象实现的接口被自动代理。下面的列表显示使用一个拦截器和一个顾问为目标对象创建代理：

```java
ProxyFactory factory = new ProxyFactory(myBusinessInterfaceImpl);
factory.addAdvice(myMethodInterceptor);
factory.addAdvisor(myAdvisor);
MyBusinessInterface tb = (MyBusinessInterface) factory.getProxy();
```

第一步是构造org.springframework.aop.framework.proxyFactory类型的对象。你可以使用目标对象创建此对象，如前面的示例所示，或者指定要在备用构造函数中代理的接口。

你可以添加建议（拦截器作为一种专门的建议）、顾问，或者两者兼而有之，并在代理工厂的生命周期中操纵它们。如果添加一个IntroductionInterceptionAroundAdvisor，则可以使代理实现其他接口。

ProxyFactory（继承自AdvisedSupport）上还有一些方便方法，允许你添加其他通知类型，如before和throw advice。AdvisedSupport是ProxyFactory和ProxyFactoryBean的超类。

> 在大多数应用程序中，将AOP代理创建与IOC框架集成是最佳实践。我们建议你一般用AOP将Java代码的配置外部化。
