如何动态创建 CriteriaQuery

Posted

技术标签:

【中文标题】如何动态创建 CriteriaQuery【英文标题】:How do I dynamically create CriteriaQuery 【发布时间】:2011-04-19 00:59:54 【问题描述】:

我想为此查询创建等效的 CriteriaQuery : 从用户 u 中选择 u,其中 u.name = "John" and u.surname = "Black" and u.middlename = "Small"; 但我对“where”谓词有疑问。 谢谢

【问题讨论】:

【参考方案1】:

你可以使用:


CriteriaBuilder builder = entityManager.getCriteriaBuilder();
CriteriaQuery c = ...;
Root root = ...;

Predications name = builder.equal(root.get("name"), name);
Predications surname = ...;
Predications middlename = ...;

c.where(name, surname, middlename);

【讨论】:

以上是关于如何动态创建 CriteriaQuery的主要内容,如果未能解决你的问题,请参考以下文章

如何在动态按钮上创建动态按钮单击事件?

如何使用动态模型创建动态表

如何创建自己电脑开机动态密码

如何将动态创建的 qmlcomponent 对象绑定到另一个动态创建的 qmlcomponent 对象的属性?

CriteriaQuery 多选 - 运行时构造函数错误

java中如何创建动态数组