測試增刪改時經過了測試,可是數據庫中沒有相應的變化。我已經配置'建立事務代理對象'和'自動事務代理'
即<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