我有一个已经用Hibernate编写的应用程序并映射到hiberante数据库注释(在后台我使用Postgres作为DB)。 我想知道是否有一种方法可以保持数据库不变,但是要添加另一个级别的“数据库”,其中包含java对象中的所有内存?
我的意思是, 1)当有更新/删除/创建时保持Postgres更新,并且只有在真正提交后才返回。
2)当执行某些数据库读取查询时,我希望能够使用 java 对象返回答案并避免为这些读取操作调用数据库
答案 0 :(得分:1)
Hibernate内置了一个非常棒的功能,称为二级缓存。这将允许您“插入”像ehcache这样的缓存系统来卸载大量的数据库读取负载。 Ehcache既可以单独使用,也可以分布式管理。 Ehcache本身就是一个非常强大的工具,您也可以在Web服务调用和其他查找之前利用它。我会为你发布一些不错的阅读链接。
http://howtodoinjava.com/hibernate/hibernate-ehcache-configuration-tutorial/
http://www.mkyong.com/ehcache/ehcache-hello-world-example/
如果你想独立使用它,你也可以考虑使用带有ehcache的spring来获得更具说明性的缓存风格
http://www.mkyong.com/spring/spring-caching-and-ehcache-example/