在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Spring AOP应用场景有哪些?Aop工作原理分析,面向切面编程,是通过代理的方式为程序添加统一功能,集中解决一些公共问题。应用在Debugging 调试、logging, tracing, profiling and monitoring 记录跟踪优化校准场景中。
AOP为Aspect Oriented Programming面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。
一、AOP应用场景:
AOP用来封装横切关注点,具体可以在下面的场景中使用:
Authentication 权限、Caching 缓存、Context passing 内容传递、Error handling 错误处理、Lazy loading 懒加载、Debugging 调试、logging, tracing, profiling and monitoring 记录跟踪优化校准、Performance optimization 性能优化、Persistence 持久化、Resource pooling 资源池、Synchronization 同步、Transactions 事务。
二、使用Spring AOP?
可以通过配置文件或者编程的方式来使用Spring AOP。
配置可以通过xml文件来进行,大概有四种方式:
1. 配置ProxyFactoryBean,显式地设置advisors, advice, target等
2.配置AutoProxyCreator,这种方式下,还是如以前一样使用定义的bean,但是从容器中获得的其实已经是代理对象
3.通过<aop:config>来配置
4.通过<aop: aspectj-autoproxy>来配置,使用AspectJ的注解来标识通知及切入点
也可以直接使用ProxyFactory来以编程的方式使用Spring AOP,通过ProxyFactory提供的方法可以设置target对象, advisor等相关配置,最终通过 getProxy()方法来获取代理对象
三、Aop的原理是什么?
AOP 是面向切面编程,是通过代理的方式为程序添加统一功能,集中解决一些公共问题。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。
四、Aop优势是什么?
1、各个步骤之间的良好隔离性
2、源代码无关性
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Java知识分享:Activiti的流程部署
之前为大家介绍了关于BPMN的认知文章,本片文章主要为大家介绍Activiti的流程部署,Activiti是一个独立运作和经营的开源项目品牌。Activiti项目是一项新的基于Apache许可的开源BPM平台,从基础开始构建,旨在提供支持新的BPMN 2.0标准,包括支持对象管理组(OMG),面对新技术的机遇,诸如互操作性和云架构,提供技术实现。下面介绍在IDEA中如何部署一个简单的考勤补签流程:
7573
2019-07-12 17:21:58
JavaEE框架面试题五问
小编整理了有关JavaEE框架面试题,虽然只有五道,但是却是比较经典且难以回答的问题,希望可以帮到大家。
6797
2019-07-31 20:47:36
Java面试常见关于多线程的面试题
多线程是Java技术中常用而且相对比较难易理解的一个知识点。而且多线程也是企业实际应用中必备的技术,因此在面试的过程中,面试者经常被问到关于多线程的问题,遇到这些问题大家应该怎么办呢?赶紧恶补一下Java面试常见关于多线程的面试题吧。
6528
2019-09-04 18:50:46
Java程序员常用的开源工具汇总
工欲善其事必先利其器,在大家成为一个经验丰富的Java程序员之前,除了需要不断精进自己的专业技术,还要掌握一些好用的开源工具,才能在工作中事半功倍,提高开发效率。因此本文汇总了一些Java程序员的常用开源工具,包括了Selenium、Git、Notepad++、Gradle、Tomcat、Jenkins、JIRA、Docker、Spock和Maven。下面一一把这些开源工具介绍给大家。
4516
2020-02-25 11:59:25
如何学习Spring框架?有哪些建议?
Spring作为当前最火热的Java开发框架,是每一个Java开发者都必须熟练掌握的技能。Spring框架是一系列应用框架的核心,也是SpringBoot的基础,它包含Spring、SpringMVC、SrpingTest等。如何学习Spring框架?有哪些建议?相信这些都是绝大所数学习者的问题,下面我们来一起聊聊Spring框架的学习建议~
6436
2020-06-10 18:39:28