h2断开并连接

时间:2013-06-18 20:31:44

标签: connect h2 ormlite disconnect

当我关闭h2连接(发布数据库)并尝试连接到另一个h2数据库(调试数据库)时,我遇到了问题。

要连接的Snipplet:

this.connection = new JdbcConnectionSource(connectionString);

Snipplet断开连接:

this.connection.close();

的ConnectionString:

jdbc:h2:file:/data/data/my.app/databases/myapp
jdbc:h2:file:/data/data/my.app/testdatabases/myapp

然后使用旧的连接而不是使用“新”连接。 我正在为数据库使用不同的目录。在这两种情况下,当我尝试在database1和database2之间切换时,.lock和.trace文件不会在其目录中删除。

我希望在我身边排除错位。 我在android 4.2.2上使用带有ormlite的h2(当前版本)。

1 个答案:

答案 0 :(得分:0)

  

然后使用旧的连接而不是使用“新”连接。

如果您要创建新的ConnectionSource,则需要重新创建所有DAO类并从DaoManager中清除DAO缓存。每个DAO类都有它使用的旧连接源的副本。

ConnectionSource connectionSource = new JdbcConnectionSource(connectionString);
DaoManager.clearCache();
Dao<Foo,Integer> fooDao = DaoManager.createDao(connectionSource, Foo.class);
...