ibatis2.3.4 + h2 1.3.146数据不能保存的问题
一个简单的测试用例中ibatis2.3.4 + h2 1.3.146。只有一个map类,
H2是用的Embedded模式运行的
?
package org.jamsacase class User(var userName:String,var id:Int){def this()=this("abc",-1)}import com.ibatis.sqlmap.client.SqlMapClientBuilderimport com.ibatis.common.resources.Resourcesobject Client { val sqlMapClient = initSqlMapClient(); private def initSqlMapClient()={ SqlMapClientBuilder.buildSqlMapClient(Resources.getResourceAsReader("sql-map-config.xml")) }}import com.ibatis.common.resources.Resourcesimport Client.sqlMapClientobject UserDao { def getUser(id:Int)={ sqlMapClient.queryForObject("getUser",id).asInstanceOf[User] } def addUser(user:User)={ sqlMapClient.insert("addUser",user) } def deleteUser(id:Int)={ sqlMapClient.delete("deleteUser",id) } def main(args:Array[String]){ var user = User("abc5",5) addUser(user) Thread.sleep(2000) }}??如果不加Thread.sleep这行,数据就不会被保存到数据库里去。
从控制台可以看到语句都执行了,但是数据没有被保存进去。
如果H2以Server模式运行,没有出现这个问题。
暂时没找到具体原因