spring aop 到底是什么东东, 至今不是很明白。

问题描述

spring aop 到底是什么东东, 至今不是很明白。

spring aop 通俗讲,怎么理解,越简单越通俗越好。因为没用过,至今还是有点小畏惧。哈哈

解决方案

通俗地说,一个程序,需要变化和扩展吧。除了直接在源代码上修改,我们还有一个办法就是把软件变成很多小块积木一样,然后通过替换其中的一块,来更改代码,每个积木就是一个aspect,而我们编写程序就是约定好每个程序需要哪些aspects,所以是aspects oriented。
spring提供了一些代码,来组装这些积木,而作为开发者,你直接编写每个积木块就可以了。

解决方案二:

AOP ,aspect oriented programm,就是面向切面编程。业务纵向是各不相同的,但是横向可能有共同的部分,例如一个方法调用之前可能都需要参数校验,在一个方法执行之前都需要打印一些参数信息等,这类相同功能在大量不同的类中可能都需要重复编写。那么我们可以把这些横向公共的部分抽取出来,利用反射回掉,自动调用这些操作,而不用再代码中显式编写,可以省去大量的重复工作。
切面,就是横向公共部分,一刀横向切下去有相同操作,而纵向看都是各自不同的功能。

解决方案三:

打个比方,每天吃饭,是一件事情,现在我们每天吃饭前都要洗手,那么我们可以做洗手这件事,这就是一个切面,在每天吃饭前执行。
日后我们吃饭,不论是去餐馆,还是大排档,都在吃饭前执行洗手这个动作。
切面应是一次开发终身受用的,用于处理一类场景,并且在日后的开发中不再需要关心。

解决方案四:

这玩意不要去扣字面意思。
只要明白它采用了字节码的技术来进行扩展。
假设有方法funcA()
对这方法调用时,可以在调用前、调用后或调用异常时有额外的处理,而这个处理通常是调用一个方法。
spring的声明式事物处理就是如此。
你调用一个service层的方法,在调用前它开启事务,调用结束后提交事务,调用失败则事务回滚。

时间: 2024-12-31 13:01:25

spring aop 到底是什么东东, 至今不是很明白。的相关文章

spring AOP的方式监控方法的执行时间

前段时间有几个同行跟我吐槽说系统响应越来越慢,优化不知道从何入手!今天写写使用spring的aop来实现方法级的执行时间的记录监控,以此来评估方法的性能以及针对性的对已存在的方法进行优化. 对于监控,我们比较关注监控的可靠性和性能,准确,高效,这才能在不影响整体性能的情况下对我们的系统性能有个较准确的认识. 对于spring aop这个我就不多介绍了,网上一搜一大把,使用过spring的人都知道spring的ioc和aop.ioc我们常用,但在我们自己的系统中,aop的使用几乎为零,除了这个监控

使用spring aop aspect为什么没有被调用

使用spring aop aspect为什么没有被调用? 我在Java Web项目中使用到了spring 的aop,记录用户连续登录失败的次数,如果连续登录失败的次数达到3次,则在当前 时间段内禁止登录. aop的配置如下: Xml代码   <aop:config>              <aop:pointcut id="userServicePointcut"               expression="execution(* com.sho

哇!什么东东?史上最酷的新品发布会(图)

3721.html">2014年1月16日, 一场以"哇!什么东东?"为主题智能新品发布会在福州香格里拉大酒店隆重 举行,由于保密工作做得好,全国数十家到场的受邀媒体一直"不明觉厉".直到一丁芯总裁 张远燚现场揭晓谜底:这个东东乃是一丁芯公司精心研发的一丁魔盒--超级智能插座.有媒体人士不禁笑称,在IT厂商 普遍用"高大上"的高端词汇做发布会的大环境下,一丁芯这么奇特而有新意的主题发布会,堪称史上最酷的主题发布会.     一丁芯

动漫东东借力Discuz! X2 打造中国系统萌化旗舰平台

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 近日,原创系统萌化作品交流平台-动漫东东将其论坛程序升级至Discuz! X2版本,升级后的动漫东东受到用户的普遍欢迎,人气直线上升,日均会员注册量增加了40%. 据悉,动漫东东创建于2007年2月,是第一个原创系统萌化作品交流平台,也是系统萌化的提出者与推广者.经过四年的发展,网站聚集了近50万萌化爱好者和原创作者.成立至今,网站共发布原创

“爱东东”网正式上线,转推女性风格打造特色平台

喜欢时尚的80后女孩代师迅,放弃了自己在日本一家外贸公司几万元人民币一个月的收入,回到中国加入了一个员工平均工资几千元的创业型公司.但她觉得自己找到了最好玩的工作. 这个公司是一个网站,网站老板兼创始人马金男毕业于南开大学经济学院,早期进入新浪无线事业部工作,后来参与创办了社交网络"占座网"以及"乐淘网",2010年离职创业,注册成立了"泛海同创",并推出了"爱东东"网. 7月1日,改版后的"爱东东"网正式

J2EE中使用Spring AOP框架和EJB组件

j2ee 快速发展的开发人员社区.对各种后端技术(包括JMS.JTA.JDO.Hibernate.iBATIS等等)的支持,以及(更为重要的)非侵入性的轻量级IoC容器和内置的AOP运行时,这些因素使得Spring Framework对于J2EE应用程序开发十分具有吸引力.Spring托管的组件(POJO)可以与EJB共存,并允许使用AOP方法来处理企业应用程序中的横切方面--从监控和审计.缓存及应用程序级的安全性开始,直到处理特定于应用程序的业务需求. 本文将向您介绍Spring的AOP框架在

s2sh框架搭建(基于spring aop)

对于spring aop 是如何管理事务的,请看一下:http://bbs.csdn.net/topics/290021423 1.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3

Spring AOP框架

AOP正在成为软件开发的下一个圣杯.使用AOP,你可以将处理aspect的代码注入主程序,通常主程序的主要目的并不在于处理这些aspect.AOP可以防止代码混乱. 为了理解AOP如何做到这点,考虑一下记日志的工作.日志本身不太可能是你开发的主程序的主要任务.如果能将"不可见的".通用的日志代码注入主程序中,那该多好啊.AOP可以帮助你做到. Spring framework是很有前途的AOP技术.作为一种非侵略性的,轻型的AOP framework,你无需使用预编译器或其他的元标签,

基于Annotation拦截的Spring AOP权限验证方法

在 Web 开发过程中,一个非常理想的开发过程是,开发人员在开发中并不需要关心权限问题,不需要在 Java 方法中写 很多逻辑判断去判断用户是否具有合适的角色和权限,这样开发会花费非常多的人力成本,因为所有的开发人员都需要了解 关于权限的详细内容,也非常不容易进行后期维护.我们希望有专门的很少数量的开发人员了解权限内容,并且可以随时方 便的修改和配置.于是,我们使用 Annotation,在 Java 方法之前使用 Annotation 可以非常方便的添加,修改和删除对 于权限的管理功能. 本文