zoukankan      html  css  js  c++  java
  • AOP初识

    AOP是Aspect Oriented Programing的简称,面向切面编程。AOP适合于那些具有横切逻辑的应用:如性能监测,访问控制,事务管理、缓存、对象池管理以及日志记录。AOP将这些分散在各个业务逻辑中的代码通过横向切割的方式抽取到一个独立的模块中。AOP 实现的关键就在于 AOP 框架自动创建的 AOP 代理,AOP 代理则可分为静态代理和动态代理两大类,其中静态代理是指使用 AOP 框架提供的命令进行编译,从而在编译阶段就可生成 AOP 代理类,因此也称为编译时增强;而动态代理则在运行时借助于 JDK 动态代理、CGLIB 等在内存中“临时”生成 AOP 动态代理类,因此也被称为运行时增强。
      代理对象的方法 = 增强处理 + 被代理对象的方法
      Spring AOP 则采用运行时生成 AOP 代理类,因此无需使用特定编译器进行处理。由于 Spring AOP 需要在每次运行时生成 AOP 代理,因此性能略差一些。
      AOP使用场景
      AOP用来封装横切关注点,具体可以在下面的场景中使用
      Authentication 权限
      Caching 缓存
      Context passing 内容传递
      Error handling 错误处理
      Lazy loading 懒加载
      Debugging 调试
      logging, tracing, profiling and monitoring 记录跟踪 优化 校准
      Performance optimization 性能优化搜索
      Persistence 持久化
      Resource pooling 资源池
      Synchronization 同步
      Transactions 事务

  • 相关阅读:
    5 输出的properties文件按照key进行排序
    JFinal 部署在 Tomcat 下推荐方法(转)
    15个必须知道的chrome开发者技巧(转)
    一次完整的浏览器请求流程(转)
    工作第一天
    Struts2的crud
    equal 和 ==
    生成Apk遇到的问题
    Http Framework
    Gradle: The New Android Build System
  • 原文地址:https://www.cnblogs.com/happyWolf666/p/8316362.html
Copyright © 2011-2022 走看看