2 qq 23039605 qq_23039605 于 2016.03.28 23:06 提问

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

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

4个回答

caozhy
caozhy   Ds   Rxr 2016.03.28 23:25
已采纳

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

qq_23039605
qq_23039605 回复caozhy: 静僻,受教了
2 年多之前 回复
wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.03.29 08:04

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

qq_16696495
qq_16696495   2016.04.07 16:39

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

mlw519
mlw519   2016.03.29 09:33

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

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
[Java]Spring Ioc讲解,不怕你不懂
引述:IoC(控制反转:Inverse of Control)是Spring容器的内核,AOP、声明式事务等功能在此基础上开花结果。但是IoC这个重要的概念却比较晦涩隐讳,不容易让人望文生义,这不能不说是一大遗憾。不过IoC确实包括很多内涵,它涉及代码解耦、设计模式、代码优化等问题的考量,我们打算通过一个小例子来说明这个概念。通过实例理解IoC的概念     贺岁大片在中国已经形成了一个传统,每到
AOP编程思想理解
本文主要介绍AOP思想,而不是Spring,Spring在本文只做为理解AOP的工具和例子,所以也不打算介绍Spring的Aspect、Join point、Advice、AOP proxy等概念,那样初学者会很难理解,如果你懂了AOP的思想,那么Spring的AOP,还是AspectJ都容易理解了。 Spring如此流行,当我第一次接触Spring的时候,到网上看了一些文章,都讲得神乎其乎,最
Spring AOP是什么意思,通俗讲解
切面编程,就是在你项目原有的功能基础上,通过AOP去添加新的功能,这些功能是建立在原有功能的基础上的,而且原有的功能并不知道你已经添加了新的功能。比如说,你去ATM取钱,取钱是一个功能,取完钱后向你的手机发送一条取钱信息,这就是新加的功能。 AOP就是在某一个类或方法执行前后打个标记,声明在执行到这里之前要先执行什么,执行完这里之后要接着执行什么。插入了新的执行方法。
Spring Aop源码学习--JoinPoint连接点
JoinPoint连接点:程序执行过程中明确的点,简单的来说就是Java程序执行过程中的方法。JoinPoint接口图:JoinPoint通过抽象实现成为一个个的Method,在执行每个JoinPoint所代表的Method中,会执行对应的Advice(参考博客Spring Aop源码学习--Advice通知)。JoinPoint接口提供的方法public interface Joinpoint
Spring AOP原理分析一次看懂
什么是AOP AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从
传输工具Numcom
不知道怎么用 !!那位高手来,看看到底是什么东东东东东东东东东东东东东东东
Spring AOP 项目出现 通配符的匹配很全面, 但无法找到元素 'aop:config' 的声明。错误
我在写一个Spring AOP demo的时候运行test总是出现  :通配符的匹配很全面, 但无法找到元素 'aop:config' 的声明。的错误 一开始看别人的解释以为是缺少jar包,但是事实不是这样的,而是aop:config的schemaLocation 地址写错了。 画圈的地方应该是  :spring-aop.xsd   可以看一下上面的spring-beans.xsd就知道是
通配符的匹配很全面, 但无法找到元素 'aop:config' 的声明
Wildcard matching is very comprehensive, but cannot find the elements' aop: config 'statement. 通配符的匹配很全面, 但无法找到元素 'aop:config' 的声明
Spring 提示:无法找到元素 'aop:aspectj-autoproxy'
问题描述: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 18 in XML document from class path resource [e_aop_anno/bean.xml] is invalid; nested exception is org.xml.sax.SAXPars
spring Aop中切入点和连接点什么关系?
连接点是个虚的概念,可简单理解为切入点的集合;他只是对应用程序的所有需要进行插入切面的一个统称; 每个切入点都对应具体的连接点,在运行期spring就是根据这些切入点的定义,将通知或者拦截器插入到具体的连接点上。