在提交之前,请参阅Oracle会话中的所有DML更改

时间:2011-07-07 08:48:08

标签: java oracle spring-transactions

我正在为Oracle(10g)存储过程编写测试工具。我打算使用@Transactional测试来运行存储过程,以便在测试结束时回滚事务。所以我的测试看起来像:

@ContextConfiguration(locations = "classpath:spring/ITestAssembly.xml")
@RunWith(SpringJUnit4ClassRunner.class)
public class ContentGenerationRunnerTest {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @Test
    @Transactional
    public void contentIncShouldRun() throws Exception {
        new ContentGenerationRunner().runVclBec(jdbcTemplate);
    }
}

我可以断言已经进行了正确的更新,因为测试会话的本地更改将在测试方法中可见。

但是,要进行更严格的断言,能够检查已在会话中调用但尚未提交的DML语句的完整列表是很方便的。有没有办法可以看到这个?