使用list()的org.hibernate.ObjectNotFoundException问题

use*_*778 2 java hibernate java-ee

以下查询引发异常:

 Query query = session.createQuery("from Associate as a order by a.username asc");
 associates = query.list();
Run Code Online (Sandbox Code Playgroud)

org.hibernate.ObjectNotFoundException:不存在具有给定标识符的行:[ca.mypkg.model.Associate#0]

如果我在数据库中创建与条目id0它工作得很好。我不是很了解它,因为我只是试图加载数据库中的所有条目,而不仅仅是特定条目。

我发现类似的问题与试图加载给定的对象有关,而ID我却没有这样做。

副班级:

@Table(name = "user")
@XmlRootElement(name = "associate")
public class Associate implements Serializable {

private String username;
private String password;
private String firstName;
private String lastName;
private String userType;
private int id;
private String email;
private String isActive;
private Department dept;
private String lastUpdated;
private String associate_type;
// ...
@Id
@GeneratedValue
public int getId() {
    return id;
}

@OneToOne
@JoinColumn(name = "dept")
public Department getDept() {
    return dept;
}
Run Code Online (Sandbox Code Playgroud)

小智 5

根据我的经验,这种类型的错误消息通常意味着它没有通过提及的ID找到联接的实体,而不是查询中请求的实体(在您的情况下为Associate)。我的猜测是,关联类包含具有原始类型主键的联接实体。