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 事务

  • 相关阅读:
    TCP协议实现双工通信
    搭建本地FTP服务器
    CSS 3 选择器root、not、empty、target
    CSS 3 中的伪类选择器
    CSS 3 中的属性选择器
    Entity Framework Code First属性映射约定
    Entity Framework数据库初始化四种策略
    HTML 5 Base 64 编码
    HTML 5 离线程序
    HTML5 本地数据库IndexedDB数据库
  • 原文地址:https://www.cnblogs.com/happyWolf666/p/8316362.html
Copyright © 2011-2022 走看看