事务是什么?在MySQL中是怎么去开启,提交,回滚事务的。
- 事务是一组操作的集合,这些操作要么全部成功,要么全部失败;
- 在MySql中事务是默认提交的(每一条SQL语句开启一个事务);
- 在MySql中手动开启、提交、回滚事务:
手动开启事务(一组操作开始前,开启事务):start transaction 或 begin ;
提交事务(这组操作全部成功后,提交事务):commit ;
回滚事务(中间任何一个操作出现异常,回滚事务):rollback ;
在Spring中怎么管理事务,用什么注解,在那个层次进行使用可以有效管理事务
- 在Spring中可以使用@Transactional注解来管理事务;
- 在service层添加事务注解(因为事务所控制的是一组操作的集合,而只有在业务层才会存在一个业务功能包含多个数据访问操作)
事务管理时规则:如果方法能够正常执行完自动提交事务,如果出现异常自动回滚事物。事务默认识别的异常是运行时异常,如果想要识别到编译时异常从而实现回滚,该怎么操作?
- 在@Transactional注解上添加rollbackFor这个属性可以指定出现何种异常类型回滚事务
@Transactional(rollbackFor=Exception.class)
事务的传播方式有哪些,含义是怎样?
AOP叫做什么,有什么作用?举一个5岁孩子就能理解的例子?
- AOP英文全称:Aspect Oriented Programming(面向切面编程、面向方面编程)面向