zoukankan      html  css  js  c++  java
  • hql查询技巧

    要擅于利用对象之间映射的集合去查与其关联的对象,而不是直接在dao层重新写查询的方法,其实,hibernate正是对复杂查询的一种解放,既然有现成的东西,何必再去闭门造车,而且造出来的还是个旧车。

    查询给定目录id下的所有试卷:

    public Pagination getPage(EmPaperCatalogDef pcdId, String sddId, int pageNo, int pageSize) {
            List<EmPaper> list = new ArrayList<EmPaper>();
            getAllSubPaper(list, pcdId);
            if(list.size() > 0){
                List<Long> ids = new ArrayList<Long>();
                for(EmPaper ep : list){
                    ids.add(ep.getTpId());
                }
                return emPaperDao.getSubPapers(ids, sddId, pageNo, pageSize);
            }
            return new Pagination(1, 0, 0, new ArrayList<EmPaper>(0));
        }
        
        public void getAllSubPaper(List<EmPaper> list, EmPaperCatalogDef paperCatalogDef){
            if(paperCatalogDef.getEmPapers()!=null && paperCatalogDef.getEmPapers().size()>0){
                list.addAll(paperCatalogDef.getEmPapers());
            }
            if(paperCatalogDef.getEmPaperCatalogDefs()!= null && paperCatalogDef.getEmPaperCatalogDefs().size()>0){
                for(EmPaperCatalogDef cata : paperCatalogDef.getEmPaperCatalogDefs()){
                    getAllSubPaper(list, cata);
                }
            }
        }

  • 相关阅读:
    做事要趁早
    软件企业利润率知多少
    项目管理经验谈之意外事件处理
    App中调用iPhone的home + 电源键截屏功能
    WCF学习(一)
    10月博客学习一览
    设计模式之工厂模式读后感
    请教各位大鸟(关于附件上传)
    刚来的兄弟,一起扬帆起航吧
    巧用asp导出csv格式excel报表
  • 原文地址:https://www.cnblogs.com/luoxiaolei/p/4452473.html
Copyright © 2011-2022 走看看