Spring事务配置 – XML注释在一起 – 哪个是高级?

假设我有一个在类或方法级别用@Transactional标记的
Spring bean,而且在一些使用< aop:config>的Spring XML中也有.添加交易建议.

我认为两种配置可以很好地协同工作,但是当Spring创建其上下文和代理时,如果配置不兼容(例如PROPAGATION_MANDATORY vs PROPAGATION_NEVER),那么哪个配置具有资历?

最佳答案 要明确重复问题的答案,请使用:

    <tx:annotation-driven transaction-manager="txManager" order="X"/>

    <tx:advice id="txAdvice" transaction-manager="txManager">

    <aop:config>
            <aop:pointcut id="pointcut" expression="..."/>
            <aop:advisor advice-ref="txAdvice" pointcut-ref="pointcut" order="Y"/>
    </aop:config>

…’X’和’Y’的下限具有优先权.

Spring Docs on the subject

点赞