我目前正在开发一个实现OODB(面向对象数据库)缓存的项目,其中要求是使用db4o数据库作为缓存并在其中存储对象。我的后端数据库在MySQL中,我使用Hibernate从中获取数据并形成对象。
我可以使用本机查询或通过示例方法查询db4o中的对象,在hibernate中我可以使用HQL或SQL从RDBMS获取数据。但是我的问题在于如何弥合db4o和Hibernate之间的差距并根据需要转换查询(我使用两者,因为已经给出了这样的要求)。
答案 0 :(得分:0)
在DataNucleus中有一个带有JPA / JDO包装器的db4o支持。但是afaik它不支持JPQL(Hibernate支持JPQL)。他们同时也放弃了db4o支持,因为它维护得不好。
所以,答案是:对于您的查询问题没有很好的解决方案。
您的缓存层应该怎样做?你为什么选择db4o?为什么不能使用常规的二级缓存,比如集成在Hibernate中的Ehcache?