1、spring事务传播特性
多事务时处理策略
PROPAGATION_REQUIRED:如果存在事务,则支持当前事务,没有的话新建一个事务
PROPAGATION_SUPPORTS:如果存在事务的话,支持当前事务,否则以非事务方式执行
PROPAGATION_MANDATORY:如果存在事务则支持当前事务,否则抛出异常
PROPAGATION_NOT_SUPORTED:不支持事务,以非事务方式执行
PROPAGTION_REQUIRES_NEW:新建事务,如果当前存在事务就将其挂起
PROPAGATION_NERVER:以非事务方式执行,如果存在事务的话抛出异常
PROPAGATION_NESTED:支持当前事务,新增Savepoint点,与当前事务同步提交或者回滚
2、数据库的事务隔离级别
READ_UNCOMMITED:允许读取未提交的数据。可能导致脏读、幻读不可重复度
READ_COMMITED:允许允许在并发事务已经提交后读取。可防止脏读、但幻读和不可重复读人可发生
SERIALIZABLE:完全服从ACID的隔离级别,确保脏读,幻读不可重复读不会发生,是通过锁定在事务中设计的数据实现的