1.理解什么是SpringAOP
SpringAOP就是面向切面编程,我的理解就是,在你写完一个程序后,你不想改变其中代码,但是又想给这个程序加一些功能或者技术,然后你将新的技术插入这个程序中,这就叫面向切面编程。SpringAOP可以将这种技术只加入一个方法中,也可以将这种新的技术加在所有方法中。很大限度的减少了代码量。
2.AOP的组成
要使用AOP就要记住它由什么组成。
第一个就是切面(Aspect):在使用AOP时我们都要使用Aspect,去说明这个新的技术或功能就是切面,它包含了通知和切点
第二就是切点(Pointcut):它是确定切面使用的范围的,定义切面插入在哪些方法上
第三是通知(Advice):它定义了切点要执行哪些程序代码和执行的时机
第四是连接点(Join Point):就是满足切点的范围的具体的点。
第五是植入(Weaving):它就是把切面插入到目标对象上。
3.AOP使用范围
现在我们经常拿aop来打印日志记录和事务
首先是日志记录
第一步就是引进jar包
第二步就是配置根节点,它有手动配置或者开启注解的方式
在spring容器中加入
手动配置
或者
注解(开启驱动)
或者使用配置类开启
别忘了添加头文件
第三步将切面对象交给容器创建
可以使用扫描包的方式
或者创建bean
第四步创建方法
使用环绕通知
使用前置通知
我们使用的时候它会将方法自动添加进去。
二、事务
事务就是保持数据完整性,它主要是应用在连接数据库,传输数据时使用的。它可以保证数据传输时,其中一个失败就全部失败。而不是其他数据继续传输。导致数据丢失。
怎么使用事务
xml方式
定义事务管理器
开启事务驱动
也可以使用复杂的方式,配置事务规则,和配置切面差不多
使用配置类的方式
如果使用配置事务规则方式,就可以直接使用。如果使用注解的方式在方法上加上@Transactional