java - 在 Spring 测试中插入后回滚

标签 java spring-mvc testing

我正在测试我的 spring 应用程序,我在测试应用程序时将数据插入数据库。 但是我不知道如何回滚。

测试代码:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:/META-INF/spring.cfg.xml")
public class SpringAppTest{
    @Autowired
    private MyService myService;

    @BeforeClass
    public static void setUpClass() throws Exception {
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Test
    public void testInsert(){
        //insert code
    }
}

请指导我。

最佳答案

在课前使用以下注解:

@TransactionConfiguration(transactionManager = "txManager",defaultRollback = true)
@Transactional

这里的 txManager 是应用上下文的事务管理器。

这里的 txManager 是来自应用程序上下文的事务管理器的实例或 bean id。

    <!-- Transaction Manager -->
    <bean id="txManager"
          class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>

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

关于java - 在 Spring 测试中插入后回滚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24179277/

相关文章:

symfony - Silex - 从测试中分派(dispatch)时不执行监听器

spring - Google 应用引擎与 Spring 框架的兼容性

java - 多线程(多请求)调用的Spring @Transactional方法

c# - Form.ShowDialog() 不显示启用调试的窗口

java - Spring Swagger2集成ServletContext Autowiring 问题

java - 如何查找我的 Spring Boot 应用程序每秒收到多少个请求?

r - 使用数据框列中的值进行比例测试

java - 天气应用程序 (JSON) 数据未显示在 TextView 中

java - 快速排序实现错误java

java - 从覆盖传递数组