springAOP
AOP是什么?
AOP就是Aspect Oriented Programming的缩写,意为面向切面编程,一种编程范式,指导开发者如何组织程序结构。其作用是在不影响原始设计的基础上为其进行功能增强。
AOP的核心概念:
1.连接点:程序执行过程中的任意位置的所有方法都可以是连接点,不管是接口里面的抽象方法,还是实现类里面的重写方法,都是连接点
2.切入点:就是匹配连接点的式子,其中在springAOP中,一个切入点可以只描述一个具体方法,
也可以匹配多个方法。一个具体的方法是指在数据访问层中的接口中没用形参和返回值的方法。而匹配多个方法:所有带有一个参数的方法。
3.通知:在切入点处执行的操作,也就是共性功能,在springAOP中最终是以方法的形式呈现的。
4.通知类:定义通知的类。
5.切面:描述通知与切入点的对应关系
实际应用
我们可以通过通配符描述切入点,实现快速描述
使用@EnableAspectJAutoProxy(启用面向切面自动代理)注解配置
开启了上述配置之后,所有在容器中,被@AspectJ
注解的 bean 都会被 Spring 当做是 AOP 配置类,称为一个 Aspect(面)
。
AOP通知类型
AOP通知描述了抽取的共性功能,根据共性功能抽取的位置不同,最终运行代码时要将其加入到合理的位置 AOP通知共分为5种类型
1.前置通知2.后置通知 3.环绕通知4.返回后通知 5.抛出异常后通知 其中主要掌握环绕通知
spring事务
事务作用︰在数据层保障一系列的数据库操作同成功同失败
Spring事务作用︰在数据层或业务层保障一系列的数据库操作同成功同失败
事务的开启步骤:
首先,要在jdbc中配置bean,然乎在要开启事务管理的接口上添加 @Transactional,再去spring配置中添加@enableTransactionManagement表示告诉spring事务由注解启动。在@Transactional中可以添加事务相关配置,如readOnly,timeout,rollbackFor,rollbackForClassName,noRollbackFor,noRollbackForClassName,以及propagation。