【发布时间】:2012-02-26 10:09:55
【问题描述】:
我刚开始使用 JPA Criteria API 有几个问题:
Expression 的不同子接口有什么区别,应该在什么时候使用?在什么不同的情况下说,where 子句?
什么时候需要实体的元模型,什么时候应该使用 entity.get("name") 访问属性?
感谢任何答案和体面的教程链接。
谢谢
【问题讨论】:
标签: jpa jpa-2.0 criteria-api
我刚开始使用 JPA Criteria API 有几个问题:
Expression 的不同子接口有什么区别,应该在什么时候使用?在什么不同的情况下说,where 子句?
什么时候需要实体的元模型,什么时候应该使用 entity.get("name") 访问属性?
感谢任何答案和体面的教程链接。
谢谢
【问题讨论】:
标签: jpa jpa-2.0 criteria-api
看完Java EE 6 Tutorial,强烈推荐article。
我在 Metamodel 方面的经验是,这是在运行查询时将运行时错误风险降至最低的最佳方式,因为 Metamodel 可以使用字段名称而不是相应的字符串值。这个网站上有更多的例子。有些是:
JPA: Selecting entities based on multiple criterions on multiple child entities
How to use JPA Criteria API when joining many tables
JPA / Hibernate: CriteriaBuilder - How to create query using relationship object?
https://stackoverflow.com/a/3842319/870122
在上面的链接中,您将看到使用表达式的某些子接口的真实示例:谓词、根、连接、来自等...(here 关于该主题的另一个有用链接)
【讨论】: