Java 在JPA中连接命名查询

Java 在JPA中连接命名查询,java,jpa,named-query,Java,Jpa,Named Query,我想知道我是否可以在JPA中加入2个命名查询。作为一个例子,我有以下两个命名查询 1-获取所有活动用户 2-获取给定公司的所有用户 我是否可以加入上述两个命名查询并获得 获取给定公司的所有活动用户 不要为此使用NamedQuery。直接向方法传递查询字符串是最好的选择 您必须了解方法createNamedQuery(字符串名称)采用命名查询的名称。然而,createNamedQuery(String-qlString)接受一个查询字符串,因此这符合您的需要 或 为此,创建一个单独的NamedQu

我想知道我是否可以在JPA中加入2个命名查询。作为一个例子,我有以下两个命名查询

1-获取所有活动用户
2-获取给定公司的所有用户

我是否可以加入上述两个命名查询并获得
获取给定公司的所有活动用户

不要为此使用
NamedQuery
。直接向方法传递查询字符串是最好的选择

您必须了解方法
createNamedQuery(字符串名称)
采用命名查询的名称。然而,
createNamedQuery(String-qlString)
接受一个查询字符串,因此这符合您的需要

为此,创建一个单独的
NamedQuery

我是否可以加入上述两个命名查询并获取给定公司的所有活动用户

不,那是不可能的。编写一个智能命名查询,该查询可以采用参数来表示所有情况(如果可能),或者使用多个命名查询


如果您使用的是JPA2.0,那么Criteria API可能是编写动态查询的另一个(更好)选项。

海报为什么要使用HQL?他说的是JPA,不是冬眠。@DataNucleus:哦,是的。这是我默认设置中的默认值。对不起,现在修改了。