Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Hibernate、Spring、MySQL 5.7和Lombok复制结果_Mysql_Hibernate_Spring Mvc - Fatal编程技术网

使用Hibernate、Spring、MySQL 5.7和Lombok复制结果

使用Hibernate、Spring、MySQL 5.7和Lombok复制结果,mysql,hibernate,spring-mvc,Mysql,Hibernate,Spring Mvc,我有一些简单的代码,比如: @Transactional(readOnly = true, timeout = 10) public List<MyClass> findThem() { Criteria criteria = getSession().createCriteria(MyClass.class); @SuppressWarnings("unchecked") List<MyClass> theList = criteria.li

我有一些简单的代码,比如:

@Transactional(readOnly = true, timeout = 10)
public List<MyClass> findThem() {

    Criteria criteria = getSession().createCriteria(MyClass.class);

    @SuppressWarnings("unchecked")
    List<MyClass> theList = criteria.list();
    return theList;
}
更新3:

我还能够在不使用结果转换器的情况下使用HQL(节略)获得正确的结果:

    String hql = "from MyClass myClass";
    Query q = getSession().createQuery(hql);
    List<MyClass> myClasses = q.list();
    return myClasses;
String hql=“来自MyClass MyClass”;
Query q=getSession().createQuery(hql);
List myClasses=q.List();
返回MyClass;

将比较每个查询的SQL输出(有很多输出需要尝试理解)。

查询中一定发生了一些连接,这会增加resultset,从而增加您的计数,我经常遇到类似的问题,您可以尝试在集合中而不是列表中获取数据,或者观察在DB中触发的实际查询。

myclass是否与另一个实体有一个或多个关系。如果是,则如果在一对多关系中将提取类型定义为“渴望”,则可能会通过hibernate向您提供重复记录。请检查@PushpendraPal good think,但不检查“渴望提取”类型。查找发出的SQL命令。这可能会给您(或我们)一个错误的线索。@bphilipnyc您的MyClass与其他类之间有一对多的关系吗?如前所述,MyClass使用集合,但最后一个属性除外,我需要它作为一个列表,因为它必须允许重复。SQL查询确实涉及其中,但将尝试进行访问。
    String hql = "from MyClass myClass";
    Query q = getSession().createQuery(hql);
    List<MyClass> myClasses = q.list();
    return myClasses;