为了账号安全,请及时绑定邮箱和手机立即绑定

@Transactional 不会回滚 DAO @Test 方法

@Transactional 不会回滚 DAO @Test 方法

RISEBY 2021-08-04 16:03:04
我创建了一个MySQL 数据库并填充了用于测试的行。我想在这个数据库上做我的 DAO 单元测试。每个@Test都是@Transactional如此,每次测试后都会进行回滚。不幸的是,它不起作用,因为我的数据库仍在进行更改。我正在使用以下 context.xml加载我的Spring配置<beans xmlns="http://www.springframework.org/schema/beans"            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"            xmlns:jdbc="http://www.springframework.org/schema/jdbc"            xsi:schemaLocation="http://www.springframework.org/schema/beans                                                    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd                                                    http://www.springframework.org/schema/jdbc                                                    http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd"            xmlns:tx="http://www.springframework.org/schema/tx">    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">          <property name="driverClassName" value="com.mysql.jdbc.Driver" />          <property name="url" value="jdbc:mysql://localhost:3306/push_test" />          <property name="username" value="push_dao" />          <property name="password" value="pushpassword" />    </bean>    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">      <property name="dataSource"  ref="dataSource" />        </bean>    <bean id="userPushDAO" class="my.package.userPushDAOImpl">         <property name="dataSource" ref="dataSource"/>    </bean></beans>这个stackoverflow问题说我必须PlatformTransactionManager在应用程序上下文中提供一个bean但是即使有了它(transactionManager在我的上下文中)也没有任何反应,我的数据库仍然被修改而不是回滚。这是我的 DAO 测试类public class UtilisateurPushDAOImplTest {    private static ApplicationContext ctx;    private static UserPushDAO userPushDAO;    @BeforeClass    public static void doSetup() {        ctx = new ClassPathXmlApplicationContext("context.xml");        userPushDAO = (userPushDAO) ctx.getBean("userPushDAO");    }我是否在我的配置或我对如何/应该如何工作/做什么的理解中遗漏了什么@Transactional?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 190 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信