【发布时间】:2012-03-21 22:07:51
【问题描述】:
我遇到了一个我没有干净解决方案的问题。我正在编写一个 Java 应用程序,该应用程序将某些数据存储在一组有限的文件中。我们没有使用任何数据库,只使用普通文件。由于某些用户触发的操作,某些文件需要更改。我需要这是一个全有或全无的操作。也就是说,要么所有文件都被更新,要么一个都不更新。如果 5 个文件中的 2 个被更改,而另外 3 个不是由于某些 IOException 引起的,那将是灾难性的。
实现这一目标的最佳策略是什么? 嵌入内存数据库(例如 hsqldb)是否是获得这种原子性/事务性行为的好理由?
非常感谢!
【问题讨论】:
标签: java file transactions io atomic