Unit testing Spring AbstractTransactionalDataSourceSpringContextTests-在测试方法后不回滚数据
运行单元测试后,不会从中删除数据 数据库 我对AOP配置或spring都有问题。 我已经编写了一个单元测试来扩展类AbstractTransactionalDataSourceSpringContextTests。 对于AOP配置,我对将要测试的方法做了一个切入点,我对切入点给出了以下建议:Unit testing Spring AbstractTransactionalDataSourceSpringContextTests-在测试方法后不回滚数据,unit-testing,jakarta-ee,aop,spring-aop,Unit Testing,Jakarta Ee,Aop,Spring Aop,运行单元测试后,不会从中删除数据 数据库 我对AOP配置或spring都有问题。 我已经编写了一个单元测试来扩展类AbstractTransactionalDataSourceSpringContextTests。 对于AOP配置,我对将要测试的方法做了一个切入点,我对切入点给出了以下建议: <tx:advice id="newTxAdvice" transaction-manager="transactionManager"> <tx:attributes>
<tx:advice id="newTxAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="*" propagation="REQUIRES_NEW" />
</tx:attributes>
</tx:advice>
请告诉我为什么数据没有被删除,任何帮助都是值得的。
谢谢。- 如前所述,具有
传播属性的事务与任何其他范围更广的事务无关REQUIRES_NEW
,作为AbstractTransactionalDataSourceSpringContextTests
,不会删除内容,但实际上会回滚测试范围内的事务AbstractTransactionalSpringContextTests
AbstractTransactionalDataSourceSpringContextTests
),太晚了:数据已经提交
要执行所需操作,只需使用默认的
REQUIRED
propagation。我甚至建议一般不要使用REQUIRES\u NEW
,除非您有异常处理问题的特定用例。您是如何编写数据访问代码的?您使用的是JDBC、Hibernate还是其他方法?