我们最近在 Hibernate OGM 的公告方面比较低调,但不要被迷惑。Davide 和 Gunnar 非常忙碌,并为未来几个月将出现的功能做了大量的基础工作。
改进了投影和运算符周围的查询支持
基于我们的 JP-QL 解析器基础,我们增加了对更多 JP-QL 查询的支持
支持的运算符
- 运算符 =, <, <=, >, =, IN, LIKE, BETWEEN
- 支持的布尔组合:AND, OR, NOT
- 支持简单的属性投影和嵌入对象
在实践中,这意味着您可以编写以下 JP-QL 查询,并在 Infinispan 上运行它。
select u.firstname, u.lastname from User u where (u.age BETWEEN 12 AND 18) OR u.supervision = 'free'
提醒一下,我们现在支持的查询功能包括
- 运算符 =, <, <=, >, =>, IN, LIKE, BETWEEN
- 布尔组合:AND, OR, NOT
- 简单的属性投影
- 嵌入对象
- 参数化查询
对 MongoDB 的 JP-QL 查询支持
我们现在将 JP-QL 查询转换为 MongoQL 查询并运行它们以检索实体。这只是个开始,我们的支持与 Lucene 支持相当。
这是我们迈出的重要一步,因为我们证明了我们的工具链可以处理我们计划中的工作。
基于鉴别器的分层
OGM 现在支持单表每类策略来映射分层。在这种情况下,将添加一个列来区分分层中的实体类型。以前,您必须将子类存储在不同的“表”中。
JBoss AS 7 集成模块
JBoss AS 带有模块系统,提供更好的包和隔离库。我们已将 Hibernate OGM 添加为模块,以简化 JBoss AS 用户的使用。
Wildfly 支持即将推出。
对 Hibernate Search 批量索引的支持
当使用 Hibernate Search 与 Hibernate OGM 结合时,您无法使用 MassIndexer 索引实体。
现在已修复,我们恢复了高效的索引。
下一步
从现在起,我们将定期发布更多内容。我们忘记了“尽早发布,经常发布”的口号,但必须停止这种做法!
例如,您可以期待对Neo4J的支持,以及传递原生查询(例如对MongoDB)和检索托管对象的能力。
如何尝试
您可以查看文档或检查如何下载Hibernate OGM 4.0.0.Beta3。
非常感谢所有为这次发布做出贡献的贡献者,无论是通过拉取请求、错误报告还是论坛上的反馈。