Spring事务七种传播行为的快速记忆方法 |
您所在的位置:网站首页 › subject快速记忆方法 › Spring事务七种传播行为的快速记忆方法 |
看别人写的Spring事务传播行为详解,洋洋洒洒很多字,看完还是记不住。 如何快速记忆理解还是颇有难度的。 方法一: 类型名说明PROPAGATION_REQUIRED如果当前没有事务,就新建一个事务;如果已经存在一个事务,则加入到这个事务中。(默认情况)PROPAGATION_REQUIRES_NEW新建事务,如果当前存在事务,则把当前事务挂起。PROPAGATION_SUPPORTS支持当前事务,如果当前没有事务,就以非事务方式执行。PROPAGATION_NOT_SUPPORTED以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。PROPAGATION_MANDATORY使用当前的事务,如果当前没有事务,就抛出异常。PROPAGATION_NEVER以非事务方式执行,如果当前存在事务,则抛出异常。PROPAGATION_NESTED如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED类似的操作。观察类型名称,你会发现有点小规律。 两个REQUIRED,一定有事务,带NEW的总是自己建自己的事务。不带NEW的,有就加入,没有才建。 两个SUPPORTS,有就用,没有就拉到。带NOT的,直接不用。 剩下的, MANDATORY,强制的意思,必须用,语气强烈,没有就异常。 NEVER,从不,就不用,语气强烈,有就异常。 NESTED,嵌套的意思,有,建嵌套事务。没有,新建普通事务。 方法二: PROPAGATION_REQUIRED,有个需要,那肯定得有事务,没有就新建。 PROPAGATION_REQUIRES_NEW,需要新的,有,我也得新建个新的。 PROPAGATION_SUPPORTS,支持,我就只是支持嘛,你有,我就用,没有就拉到。 PROPAGATION_NOT_SUPPORTED,不支持,你有我就挂起,就是不用。 剩下三个和方法1一样。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |