AOP Capability:

1.Spring声明式事务管理配置。

2.Controller层的参数校验。

3.使用Spring AOP实现MySQL数据库读写分离案例分析

4.在执行方法前,判断是否具有权限。

5.对部分函数的调用进行日志记录。监控部分重要函数,若抛出指定的异常,可以以短信或邮件方式通知相关人员。

6.信息过滤,页面转发等等功能,博主一个人的力量有限,只能列举这么多,欢迎评论区对文章做补充。 

  Spring AOP 是用纯JAVA 实现的,不需借助JAVA代码在编译处理阶段来实现。Spring 是在运行期实现的。AOP的实现可以在编译,加载,运行三个阶段来实现;Spring AOP 也不需要控制类的装置机制来实现. 它和适合用在servlet 容器和应用程序服务中。Spring AOP 当前仅仅支持方法执行连接点(只对Spring beans 方法的执行进行通知。字段拦截没有被Spring 实现,尽管可以实现对字段的访问进行拦截而不需要破坏核心的Spring AOP 接口。如果你需要字段访问和更新类型的通知那么你可以考虑使用AspectJ 。Spring AOP 和其他大多数AOP 框架比起来还是有所不同的,Spring AOP 的目标不是去提供一个最完整的AOP实现,而是去实现AOP 和Spring IoC 的紧密整合,去帮助企业解决公共的问题。Spring 框架的AOP通常是和Spring Ioc 容器相结合来使用的,切面是通过使用正常的Bean 定义符来配置的 (虽然允许使用强大的 自动代理能力),这是和其他AOP实现比起来最明显的不同之处。

  Spring无缝的把Aspectj 和spring 的AOP ,容器进行了整合。为所有AOP的用户提供一致性的应用程序架构(基于Spring 框架),这种整合不影响Spring AOP 的API 和AOP 联盟API,Spring AOP 是向后兼容的 。Spring 框架的核心理念是非侵入,这就是说Spring不会强制性的把和你业务逻辑,领域模型无关的Spring相关的类和接口引入到你的代码中。在某些地方,Spring框架会给你一个选择是否要引入Spring框架依赖到你的代码库中;给你选择的依据是因为在某些场景中你只是为了简单的实现一些功能。不管如何Spring 总是会给你这样子的选择,让你可以做出一个明智的决定,那种方案给适合你当前的使用场景。
比如选择哪种AOP框架,或AOP风格;那么你可以选择AspectJ 或者 Spring AOP ,两个都选Spring 也支持。你可以选择@Aspectj 这种基于注解风格的或者是基于XML配置的方式;

最新文章

  1. iOS XCode7制作.Framework动态库和.a静态库的总结
  2. .NET 响应式自动缩略图服务器
  3. linux c 笔记-1
  4. python类型转换
  5. Node.js 安装与配置
  6. oracle加并行参数PARALLEL
  7. Ionic基础——侧边栏ion-side-menus 以及ion-tap结合侧边栏详解
  8. android开发图片分辨率问题解决方案
  9. aliyun云服务器硬件性能测试
  10. [Swift]LeetCode730. 统计不同回文子字符串 | Count Different Palindromic Subsequences
  11. 再谈包访问权限 子类为何不能使用父类protected方法
  12. hadoop启动namenode日志报这个错,首先说怎么看日志
  13. ES6项目构建(babel+gulp+webpack)
  14. 第一部分:开发前的准备-第八章 Android SDK与源码下载
  15. jQuery 事件的命名空间简单了解
  16. 5 云计算系列之glance镜像服务安装
  17. 高翔《视觉SLAM十四讲》从理论到实践
  18. PLSQL_统计信息系列08_统计信息生成和还原
  19. 170609、Nginx配置文件详细说明
  20. Java中final修饰参数的作用

热门文章

  1. vue2.0组件生命周期探讨
  2. 解决jenkins插件列表为空的问题
  3. 题目:企业发放的奖金根据利润提成。 利润(I)低于或等于10万元时,奖金可提10%; 利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%; 20万到40万之间时,高于20万元的部分,可提成5%; 40万到60万之间时高于40万元的部分,可提成 3%; 60万到100万之间时,高于60万元的部分,可提成1.5%; 高于100万元时,超过
  4. Microsoft Windows Server 部署
  5. 第1节 flume:6、flume的入门测试案例
  6. java内存模型(线程共享部分)
  7. [LUOGU] P2920 [USACO08NOV]时间管理Time Management
  8. 十二.GUI
  9. Struts2入门(1)——搭建简单的环境
  10. 数据结构实验2:C++实现单链表类