上一张我们讲解了Spring的代理,但是还是有不尽人意的地方。
先来回顾一下上次的内容,这次我用了一个示例来讲解。
这是上一次的方法:
这样子,我们没有办法控制到底给那个方法里面添加通知(事务),就会造成下面的后果
按理,来说,做查询方法的时候,是没有事务出现的。
所以我们今天就来解决这个问题。
首先,做一个切入点,用到的类org.springframework.aop.support.NameMatchMethodPointcutAdvisor
其次,自动代理,用到的类:org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator
来看看配置:
这样,在切入点中,我们可以规定具体的方法,甚至可以用*号来这是设定一组方法。在自动代理中可以设置要代理的类,也可以用*号来代替一组类。
这样在查询中,就不会出现事务通知了。
但添加,删除,更新中,还是还是应该出现事务通知的。
世上无难事,只怕有心人,继续努力!~