我有一个接收很多参数的方法,应该在查询EJBQL查询中使用它。对于普通查询,我可以使用:
public void method(Long code){
Query q = this.em.createQuery("SELECT a FROM ClassA a WHERE a.code = :code); q.setParameter("code", code);
}这个很好用。但将其更改为EJBQL不会像我预期的那样工作:
public void method(Long code){
EntityQuery<Object> eq = new EntityQuery<Object>();
eq.setEjbql("SELECT a FROM ClassA a WHERE a.code = :code");
//Set here the param code
}我的EntityQuery来自: org.jboss.seam.framework
发布于 2016-11-15 19:05:59
你不应该让新的entityQuery使用这个
EntityManager em = (EntityManager) Expressions.instance().createValueExpression("#{entityManager}").getValue();
em.createQuery("SELECT a FROM ClassA a WHERE a.code = :code); https://stackoverflow.com/questions/38593040
复制相似问题