4.8 Proxy 动态代理

Proxy 动态代理是 jfinal AOP 的底层实现机制。jfinal 4.0 版本新增了 com.jfinal.proxy 模块用于消除对 cglib/asm 的依赖来实现动态代理。

proxy 模块需要运行在 JDK 环境之下,如果需要运行在 JRE 之下,可以添加如下配置来支持:

  1. public void configConstant(Constants me) {
  2. me.setProxyFactory(new CglibProxyFactory());
  3. }

上面的配置将切换到 cglib 对 proxy 模块的实现,需要在 pom.xml 中添加其 maven 依赖:

  1. <dependency>
  2. <groupId>cglib</groupId>
  3. <artifactId>cglib-nodep</artifactId>
  4. <version>3.2.5</version>
  5. </dependency>

如果是在 "非 web 环境" 下使用,配置方法如下:

  1. ProxyManager.me().setProxyFactory(new CglibProxyFactory());