小编Aja*_*tha的帖子

仅为类创建一个对象并重用相同的对象

我想只创建一个类的一个对象,并一遍又一遍地重用同一个对象.有没有有效的方法来做到这一点.

我怎样才能做到这一点?

java

7
推荐指数
1
解决办法
1万
查看次数

使用关联进行分页的grails中的Hibernate Query在不同的结果

我的三个班级互相联系。

最初,我没有分页地构建查询,并且所有搜索结果都很好。但是现在我需要分页,并且不想打扰我的初始查询模式。有什么办法可以使我得到明显的结果。

Class Department{
    int id;
    String name;
    static hasMany = [courses:Courses]
}

Class Courses{
    String courseName;
    String courseCode;
    static hasMany = [student:Student]
    static belongsTo = [department:Department]
}

Class Student{
    String studentName;
    String address;
    static belongsTo = [courses:Courses]
}


//controller
def list = Department.createCriteria.listDistinct{
    if(params.id){
         and{eq{"id",params.id}}
    }
    and{
        courses{
            if(params.courseName){
                  and{eq("courseName",params.courseName)}
            }
        }
        and{
            student{
                 if(params.studentName){
                         and{eq("studentName",params.studentName)}
                 }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我无法为您提供实际的表和域,但是关系与上面几乎相同。对于确定的结果,它确实工作得很好,但无法分页。我尝试了多种解决方案,但返回错误。到目前为止,我还没有记录任何错误。我已经知道listDistinct不能用于分页参数。和列表未提供不同的参数。

我尝试投影,但无法像以前一样检索所有属性。有没有解决的办法。因为我需要从这三个表中的所有位置搜索所有可能的属性。我是否需要将所有查询切换到另一种方法?

grails groovy hibernate grails-orm

4
推荐指数
2
解决办法
2899
查看次数

标签 统计

grails ×1

grails-orm ×1

groovy ×1

hibernate ×1

java ×1