我刚刚开始使用JPA Criteria API有几个问题:
表达式的不同子接口和它们应该何时使用有什么区别?在什么不同的情况下,一个where子句?
您何时需要实体的元模型,何时应该使用entity.get(“name”)访问该属性?
感谢任何答案和体面的教程链接。
谢谢
答案 0 :(得分:2)
在阅读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
在上面的链接中,您将看到使用表达式的某些子接口的实际示例:Predicates,Root,Join,from等...(here关于该主题的另一个有用链接)