我以为我知道如何使用JOIN
inJPQL
但显然不知道。谁能帮我?
select b.fname, b.lname from Users b JOIN Groups c where c.groupName = :groupName
这给了我例外
org.eclipse.persistence.exceptions.JPQLException
Exception Description: Syntax error parsing the query
Internal Exception: org.eclipse.persistence.internal.libraries.antlr.runtime.EarlyExitException
Users
与 具有 OneToMany 关系Groups
。
Users.java
@Entity
public class Users implements Serializable{
@OneToMany(mappedBy="user", cascade=CascadeType.ALL)
List<Groups> groups = null;
}
Groups.java
@Entity
public class Groups implements Serializable {
@ManyToOne
@JoinColumn(name="USERID")
private Users user;
}
我的第二个问题是假设这个查询返回一个唯一的结果,那么如果我这样做
String temp = (String) em.createNamedQuery("***")
.setParameter("groupName", groupName)
.getSingleResult();
***
表示上面的查询名称。那么在里面fname
和lname
连接在一起temp
还是我得到一个List<String>
背部?