Java的时态库

我正在寻找Java的时态库,即允许存储相同概念的多个历史版本的库。 我正在寻找一个具有API的库,可以执行以下操作:

Instant i1 = Instant.valueOf("2010-01-01"); Instant i2 = Instant.valueOf("2010-01-02"); Attribute a = .... a.setValue(i1, "String as of 2010-01-01"); a.setValue(i2, "String as of 2010-01-02"); 

你可以在马丁福勒的好文章中找到关于时间问题的讨论

我找到的一个库是JTemporal ,这对我来说似乎很好,但它并不完整,缺乏对Hibernate持久性的支持。 我也想支持时间集,即在精确的时间点定义的集合。 JTemporal这样做,但坚持TemporalSet并不容易。

看看DaoFusion框架,它充当了与Hibernate紧密集成的双时态框架。 它应该是你正在寻找的。

引自链接网站:

双时态模式提供了处理大多数时间问题的优雅而复杂的方式。 DAO Fusion提供的双时间模式实现建立在Erwin Vervaet和Christophe Vanfleteren创建的双时间框架之上。 您可以从他们在富域模型中的演示时间问题中了解有关此框架的更多信息。

看看Deuce STM – Java软件事务内存。