测试增删改时经过了测试,可是数据库中没有相应的变化。我已经配置'建立事务代理对象'和'自动事务代理'
即<bean id="interceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
和 <bean class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
数据库中仍是没有记录。
这里有个现象:
两个测试类:UserTest1.java, UserTest2.java
UserTest1使用注解+JUnit4, UserTest2使用通常的JUnit3
当先运行了UserTest1中的testAddUser()后(DB中没有数据),而后运行UserTest2中的testAddUser()后DB中数据id从2开始。
解决:由于在执行数据时开启了事务,数据被放在iBATIS的一级缓存中,而操做以后没有提交事务。在测试的方法添加annotation: @Rollback(false) 便可。 java