springAop在实际中有哪些应用怎样使用cglib代理而非默认的jdk代理

SpringAOP的在实际应用中场景有哪些?主要就是事务和日志还有权限认证这一部分
  1)Authentication 权限

  2)Caching 缓存

  3)Context passing 内容传递

  4)Error handling 错误处理

  5)Lazy loading 懒加载

  6)Debugging 调试

  7)logging,tracing,profiling and monitoring 记录跟踪 优化 校准

  8)Performance optimization 性能优化

  9)Persistence 持久化

  10)Resource pooling 资源池

  11)Synchronization 同步

  12)Transactions 事务

  13) Logging 日志

如果被代理的目标对象实现了至少一个接口,则会使用JDK动态代理。所有该目标类型实现的接口都将被代理。若该目标对象没有实现任何接口,则创建一个CGLIB代理。

如果你希望强制使用CGLIB代理,(例如:希望代理目标对象的所有方法,而不只是实现自接口的方法)那也可以。

SpringAop中怎样使用cglib代理

  1)如果委托类没有实现接口,spring则会自动选择cglib代理模式进行代理

  2)也可使用注解或者xml配置的形式来:

    1.注解在springboot中

      @EnableAspectJAutoProxy(proxyTargetClass = true

    2.xml配置:

      |aop:config proxy-target-class=“true”|
        …
      |/aop:config|

    3.application配置:在springboot中

      spring.aop.proxy-target-class=true

原文地址:https://www.cnblogs.com/nyhhd/p/12617602.html