为什么我的数据集没有使用DBUnit和@DatabaseSetup注释提交到我的Oracle数据库

时间:2015-01-24 21:34:48

标签: spring spring-transactions dbunit

我是Spring和DbUnit的新手。 我配置了DBUnitDatabaseConnection正确。 我使用@DatabaseSetup(..)插入数据集。 通过我的自动有线DAO对象请求这些数据时,我找到了所有数据。 一切都很好,但是当我想通过REST请求访问数据时,我找不到任何数据,因为它们没有被提交并保存到我的oracle数据库中。 我的数据在测试结束后提交。 在测试方法启动之前,如何实现我的数据提交? 清理和刷新我的会话也不起作用。

更新: 这些注释用在我的测试类中:

  • @DiertiesContext
  • @Transactional
  • @RunWith(SpringJUnit4ClassRunner.class)来
  • @DbUnitConfiguration(databaseConnection =" dbConnection")
  • @ContextConfiguration(loader = AnnotationConfigContextLoader.class,classes = MyBeanConfig.class)
  • @TestExecutionListeners({DependencyInjectionTestExecutionListener.class,DirtiesContextTestExecutionListener.class,TransactionDbUnitTestExecutionListener.class})

我的dbConnection Bean已设置" defaultAutoCommit" to" true"," dataTypeFactory" to" Oracle10DataTypeFactory"。我的基于java的配置也启用了TransactionManagement。

1 个答案:

答案 0 :(得分:0)

我没有清算和刷新会话,而是提交了当前的交易。 那是有效的。