2

以下查询引发异常:

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

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

如果我在数据库中创建一个条目,id它就0可以了。我真的不明白,因为我只是想加载数据库中的所有条目,而不仅仅是一个特定的条目。

我发现的类似问题与尝试加载一个给定的对象有关,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;
}
4

1 回答 1

6

From my experience this type of error message usually means it does not find joined entity by mentioned id, and not the entity requested in the query (Associate, in your case). My guess is that Associate class contains a join entity which has primitive type primary key.

于 2013-01-18T15:27:49.963 回答