`
allytang314
  • 浏览: 45436 次
  • 性别: Icon_minigender_2
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

iBATIS+JUnit4+注解 测试通过,数据库中无变化

阅读更多
测试增删改时通过了测试,但是数据库中没有相应的变化。我已经配置'创建事务代理对象'和'自动事务代理'
即<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) 即可。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics