作者new122851 (未若柳絮因风起)
看板java
标题[问题] Spring aop开发是否大部分都使用AspectJ?
时间Wed Sep 21 17:05:08 2016
这是个满拢统的问题....
是这样的
我看大部分基於springAOP的开发都会使用AspectJ
可以在aop:pointcut後面接AspectJ表达式直接指定所有符合的方法当作pointcut
底下再用pointcut-ref与advice对应就可以达成aop
後来我发现好像还有几个东西像是ProxyFactoryBean和interceptorNames等
不需要AspectJ就达成AOP的方法
可是这样不就等於要自己额外加一个Bean了吗?
一个pointcut又只能对应一个aspect
而且在实现getBean方法的时候也得选择ProxyFactoryBean那个bean
这样岂不是很麻烦麻而且又容易搞混
所以我想问
在开发上,先不管基於xml还是基於annoation
AspectJ的使用算是比自己创建一个ProxyFactory的Bean还常用吗???
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 61.231.32.220
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1474448710.A.907.html
1F:→ gpctv: AOP不是一种剖面吗? 09/21 19:45
2F:→ gpctv: 用来监听Bean的使用!!! 09/21 19:45
3F:→ gpctv: 没听过AspectJ 09/21 19:46
类似下面这种用法
https://www.mkyong.com/spring3/spring-aop-aspectj-annotation-example/
基於annotation的AspectJ
我是听在深圳驻点的SI说大陆很多有用spring的整合案子很多都是用AspectJ来
实作,我也是这样所以去爬了相关文档自己trytry看,发现比只用spring来实现
aop还要灵活 但我问身边几个有过spring经验的没几个人知道这东西
※ 编辑: new122851 (61.231.32.220), 09/21/2016 22:44:52
4F:推 luoqr: ppt.cc / zs7Wi 09/21 23:09
推楼上这篇文! 很详细
至於台湾用spring aop还是aspectj哪个多呢? 我问到的是AspectJ很少甚至没有
※ 编辑: new122851 (61.231.32.220), 09/21/2016 23:39:13
5F:→ adrianshum: 大部份Spring aop 都不是用aspectJ 吧?印象中aspectJ 09/22 22:45
6F:→ adrianshum: 用到的部份都只是一些expression 还还辅助lib 之类。 09/22 22:45
7F:→ adrianshum: 实际AOP 通常都只是靠Spring 的Proxy-based AOP (也 09/22 22:45
8F:→ adrianshum: 有人用load time weaving 啦... 比较少就是) 09/22 22:45
9F:→ swpoker: 我是用sprint aop因为既然用spring那就用spring aop吧 09/23 14:58
感谢各位踊跃回复!
我後来发现对岸有一篇翻译简述了SpringAOP和AspectJ的区别
http://www.oschina.net/translate/comparative_analysis_between_spring_aop_and_aspectj
原来AspectJ也可以解决static和fina方法不能被覆盖的问题
※ 编辑: new122851 (61.231.20.220), 09/23/2016 21:09:10
10F:推 haha02: Apress的Pro Spring有蛮详细的介绍 有兴趣的话可以看看 09/24 03:05
11F:→ haha02: 目前最新的应该是第四版 ISBN 9781430261513 09/24 03:06