AOP

  • AOP的定义:AOP,Aspect Oriented Programming的缩写,意为面向切面编程,是通过预编译或运行期动态代理实现程序功能处理的统一维护的一种技术
  • 实现方式
    • 预编译

      • AspectJ
    • 运行期动态代理(JDK动态代理、CGLib动态代理)
      • SpringAOP
      • JbossAOP
  • 运用方面:日志记录;性能统计;安全控制;事务处理;异常处理
  • 相关概念
    • 切面(Aspect)
    • 连接点(JoinPoint):切面执行的动作(通知)执行的一个时机
    • 通知(Advice):在某个特定切入点上执行的动作
      • 前置通知(Before Advice):如果切面动作出现异常,前置通知动作不执行
      • 后置通知(After Running Advice)
      • 抛出异常通知(After Throwing Advice)
      • 后通知(After Ending Advice):无论切面是否出现异常,后通知动作正常执行
      • 环绕通知(Around Advice):在环绕通知方法内设置切点,包括前置、后置、和切面动作。
    • 切入点(PointCut):匹配连接点的断言,在AOP中通知和一个切入点表达式关联
    • 织入(Weaving):把切面连接到到其他的应用程序上类型或者对象上,并创建一个被通知的对象。
      • 编译时织入
      • 类加载时织入
      • 运行时织入
  • Spring中的AOP
  • Schema-based AOP
  • Spring AOP API
  • AspectJ
  • Next

最新文章

  1. an interview question(1)
  2. vi/vim实用命令
  3. C# break continue return
  4. Visual Studio图片注释image-comments扩展
  5. 中国大数据六大技术变迁记(CSDN)
  6. xp 共享 guest
  7. 小C的填数游戏
  8. (二)Bootstrap CSS 概览
  9. zoj 3761
  10. Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock’
  11. Instance of 的用法
  12. 推荐!手把手教你使用Git(转载)
  13. UNIX网络编程——TCP 滑动窗口协议
  14. [转帖] CA如何保护自己的私钥
  15. c++ string去除首尾 空格、\n、\r、\t
  16. 源码编译安装net-snmp
  17. OCX ACTIVEX程序打包个人精典案例(OCX)
  18. unity中的透视投影矩阵
  19. django项目----函数和方法的区别
  20. SpringBoot(一) 入门篇,简单配置

热门文章

  1. java源码中的注解
  2. geohash编码算法在LBS中的应用
  3. Struts2与spingmvc区别
  4. react useRef()函数
  5. Tomcat启动时卡在 INFO HostConfig.deployDirectory Deploy
  6. Python学习之旅(三十)
  7. java awt 中文乱码 显示为 方块
  8. windows环境下MySQL mysql-5.7.17-winx64 (社区服务版,community server)安装教程
  9. HTML5 - Canvas【申明:来源于网络】
  10. Codeforces 1043 - A/B/C/D/E/F - (Undone)