在Hibernate中获取对象列表将返回单个对象的列表

在Hibernate中获取对象列表将返回单个对象的列表,hibernate,jakarta-ee,hql,Hibernate,Jakarta Ee,Hql,我在SpringJavaEE应用程序中使用Hibernate。我得到了用户列表,其中User是applicationContext.xml中指定的bean,如下所示: <property name="annotatedClasses"> <list> <value>foo.bar.User</value> </list> </property> fo

我在SpringJavaEE应用程序中使用Hibernate。我得到了用户列表,其中User是applicationContext.xml中指定的bean,如下所示:

    <property name="annotatedClasses">
        <list>
            <value>foo.bar.User</value>
        </list>
    </property>

foo.bar.User
返回用户列表的代码如下:;返回的列表大小正确,但是所有对象似乎都是相同的对象(我正在使用ui:repeat打印JSF文件中的对象)

public List<User> getAllUsers() {

    Query q = currentSession().createQuery("from User");

    List<User> allUsers = (List<User>) q.list();

    return allUsers;

}
公共列表getAllUsers(){
Query q=currentSession().createQuery(“来自用户”);
List alluser=(List)q.List();
回归诱惑;
}
我怀疑该用户只返回了一次,但无法解决该问题


如何进行Hibernate查询以返回所有对象?

问题是我已将主键值(即用户id)更改为id。这导致id列被设置为全零,因此它总是返回第0个对象。

Hibernate代码似乎很好。如果记录所有返回用户的id,它会打印什么mst可能是您的JSF逻辑有问题。非常感谢,Hibernate代码是正确的。事实上,我发现了我的问题,但这相当令人尴尬;因为这是一个愚蠢的错误。请参阅下面我的评论。