小方的Java博客

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            27 隨筆 :: 17 文章 :: 115 評論 :: 0 Trackbacks

          1.有個大大提高性能的建議:

          比如得到list 是5個班級,然后要得到5個班級的所有學(xué)生

          垃圾辦法:5次通過級聯(lián)獲得,等于執(zhí)行5條sql語句

          好辦法:

          this .getSession().createQuery(
          ????????
          " from?User?a,Clazz?b?where?a.clazz=b?and?b?in(:clazz) " )
          ?.setParameterList(
          " clazz " ,?list)
          ?.list();

          僅執(zhí)行一條


          2.還有個很實用的方法,如何通過hql語句返回多個po

          List?list? = ? this .getSession().createQuery(
          ?
          " from?User?a,Clazz?b?where?a.clazz=b " ).list();

          // 使用的時候:
          Iterator?it? = ?list.iterator();
          ??
          while (it.hasNext()){
          ?Object[]?vo?
          = ?(Object[])it.next();
          ?User?user?
          = ?(User)vo[ 0 ];
          ?Clazz?clazz?
          = ?(Clazz)vo[ 1 ];
          ?System.out.println(user.getUserName()?
          + ? " , " ? + ?clazz.getClassName());
          }?


          3.我們?nèi)坑靡粚σ唬鄬σ坏取H绻^濾有問題,有個辦法

          List?students? = ? this .getSession().createFilter(clazz.getStudents(), " where?this.status='A' " ).list();?
          posted on 2007-02-14 23:30 方佳瑋 閱讀(494) 評論(0)  編輯  收藏 所屬分類: 開發(fā)經(jīng)驗點滴

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 通城县| 天峨县| 新平| 夏邑县| 如东县| 凤山市| 禹州市| 金秀| 和平县| 郑州市| 神木县| 达日县| 抚顺县| 建德市| 湛江市| 静海县| 同江市| 大庆市| 黄山市| 安国市| 红桥区| 重庆市| 青海省| 阿图什市| 晋城| 宜君县| 淄博市| 财经| 扶风县| 瑞金市| 榆林市| 广州市| 女性| 邵武市| 元谋县| 长子县| 商丘市| 宜川县| 四子王旗| 偃师市| 保靖县|