java - Berkeley DB(Java 版)在应用程序运行之间不持久

标签 java persistence berkeley-db berkeley-db-je

我正在使用 Berkeley DB 来存储我正在构建的网络爬虫的信息。但是,我的数据库信息在 session 之间没有被保存!

当我启动应用程序时,每个 DB 上的 count() 都返回 0。在 session 结束时,在退出之前,我为每个 DB 打印 count() 并且它已适当更改但是当我再次运行程序...为什么会这样?

此外,我选择不使用 Transactions,因为我是单个用户,我不会在多线程环境中运行该程序。

最佳答案

我只需要启用事务以使其在运行之间持久化:

DatabaseConfig databaseConfig = new DatabaseConfig();
databaseConfig.setTransactional(true);

关于java - Berkeley DB(Java 版)在应用程序运行之间不持久,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9772739/

相关文章:

database - Berkeley DB XML 是一个可行的数据库后端吗?

java - Berkeley DB Java 版是否支持非相等搜索?

java - 正则表达式 VS 包含。最棒的表演?

java - fragment 未被删除

java - WAR 中的无状态 ejb > 打包到 EAR > 本地 ejb 调用

Java持久化问题

java - 不确定我是否理解 TransactionAwarePersistenceManagerFactoryProxy

xml - 如何使 HaXml 和 DrIFT 与 GHC 7.0.3 一起工作?

java - 鼠标拖动手势

python - 在 python 中表达 berkeley db 中的多个列?