成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Hibernate DAO類概述

開發(fā) 后端
這里介紹Hibernate DAO類,在Action中通過DAO查詢出所有的記錄,然后加到session或request對象中,傳到客戶端,由JSP進行分頁。這種方法對于在數(shù)據(jù)量少的時候很方便,也不影響速度。

本文向大家介紹Hibernate DAO類,可能好多人還不了解Hibernate DAO類,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

在Struts分頁有兩種結(jié)構(gòu):

1. 在Action中通過DAO查詢出所有的記錄,然后加到session或request對象中,傳到客戶端,由JSP進行分頁。這種方法對于在數(shù)據(jù)量少的時候很方便,也不影響速度。

2.在Action中每次通過DAO只查詢出一頁的記錄,再傳給JSP頁面。這種結(jié)構(gòu)對于數(shù)據(jù)量大的程序很好,但對于數(shù)據(jù)量小的情況,會增加對服務器的請求,加大服務器的負載。

1).Hibernate DAO類

  1. package com.jpcf.db.dao;  
  2. import com.jpcf.db.model.*;  
  3. import com.jpcf.db.helper.HibernateUtil;  
  4. import net.sf.hibernate.*;  
  5. import java.util.*;  
  6. import com.jpcf.db.controller.*;  
  7. public class VehiclePropertyDAO {  
  8. public Collection findWithPage(int pageSize, int startRow) throws  
  9. HibernateException {  
  10. Collection vehicleList = null;  
  11. Transaction tx = null;  
  12. try {  
  13. Session session = HibernateUtil.currentSession();  
  14. tx = session.beginTransaction();  
  15. Query q = session.createQuery("from VehicleProperty vp");  
  16. q.setFirstResult(startRow);  
  17. q.setMaxResults(pageSize);  
  18. vehicleList = q.list();  
  19. tx.commit();  
  20. } catch (HibernateException he) {  
  21. if (tx != null) {  
  22. tx.rollback();  
  23. }  
  24. throw he;  
  25. } finally {  
  26. HibernateUtil.closeSession();  
  27. }  
  28. return vehicleList;  
  29. }  
  30. public int getRows(String query) throws  
  31. HibernateException {  
  32. int totalRows = 0;  
  33. Transaction tx = null;  
  34. try {  
  35. Session session = HibernateUtil.currentSession();  
  36. tx = session.beginTransaction();  
  37. totalRows = ((Integer) session.iterate(query).next()).  
  38. intValue();  
  39. tx.commit();  
  40. }  
  41. catch (HibernateException he) {  
  42. if (tx != null) {  
  43. tx.rollback();  
  44. }  
  45. throw he;  
  46. }  
  47. finally {  
  48. HibernateUtil.closeSession();  
  49. }  
  50. return totalRows;  
  51. }  

Hibernate DAO類我就貼這些分頁需要的代碼了。“from VehicleProperty vp”也可以用一個參數(shù)傳進來,有興趣的自己改一下吧

2).Action

下面是在Action中用到的代碼:

  1. public ActionForward queryWithPage(ActionMapping actionMapping,  
  2. ActionForm actionForm  
  3. HttpServletRequest httpServletRequest,  
  4. HttpServletResponse httpServletresponse) {  
  5. Collection clInfos = null;//用于輸出到頁面的記錄集合  
  6. int totalRows;//記錄總行  
  7. VehiclePropertyDAO vehicleDAO = new VehiclePropertyDAO();  
  8. //取得當前表中的總行數(shù)  
  9. try {  
  10. totalRows = vehicleDAO.getRows("select count(*) from VehicleProperty");  
  11. } catch (Exception ex) {  
  12. servlet.log(ex.toString());  
  13. return actionMapping.findForward(Constants.FAILURE);  
  14. }  
  15. //通過PagerHelper類來獲取用于輸出到頁面的pager對象  
  16. Pager pager=PagerHelper.getPager(httpServletRequest,totalRows);  
  17. //取出從startRow開始的pageSize行記錄  
  18. try {  
  19. clInfos = vehicleDAO.findWithPage(pager.getPageSize(), pager.getStartRow());  
  20. }  
  21. catch (Exception ex) {  
  22. servlet.log(ex.toString());  
  23. return actionMapping.findForward(Constants.FAILURE);  
  24. }  
  25. //把輸出的記錄集和pager對象保存到request對象中  
  26. httpServletRequest.setAttribute("CLINFOS", clInfos);  
  27. httpServletRequest.setAttribute("PAGER", pager);  
  28. return actionMapping.findForward(Constants.SUCCESS);  

查詢語句select count(*) from VehicleProperty 也可以換成你需要的任意的條件(select count(*) from VehicleProperty where ..)

【編輯推薦】

  1. Hibernate可行性全面概括
  2. Hibernate Sequence基礎描述
  3. 淺析Hibernate使用EhCache
  4. Hibernate的一級Cache
  5. Hibernate update淺談
責任編輯:佚名 來源: IT168
相關推薦

2009-09-29 16:04:29

Hibernate S

2009-06-29 08:48:41

Hibernate緩存

2009-09-22 15:10:22

Hibernate映射

2009-09-28 12:57:54

Hibernate C

2009-09-23 17:03:08

Hibernate S

2009-09-21 17:55:14

Hibernate O

2009-09-23 09:47:23

Hibernate e

2009-09-25 16:27:33

Hibernate S

2009-09-28 15:14:45

Hibernate S

2009-07-02 09:39:37

Hibernate延遲

2009-09-23 10:41:10

對象標識符Hibernate

2009-09-24 13:17:37

Hibernate類庫

2009-09-28 16:26:23

Orders OrdeHibernate

2009-09-28 13:29:41

加載過程Hibernate訪問

2009-09-22 14:57:34

Hibernate d

2009-09-03 10:42:16

C# Employee

2009-09-29 16:46:01

創(chuàng)建Hibernate

2009-09-25 17:19:28

Hibernate持久

2009-09-27 09:55:38

Hibernate持久

2009-08-31 18:46:05

繼承System.Ob
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一二区视频 | 91视频在线看 | 日韩欧美亚洲 | 欧美日韩在线视频观看 | 国产做a爱片久久毛片 | 精品99久久久久久 | 91大片| 国产成人精品久久二区二区91 | 成人免费淫片aa视频免费 | 天堂一区二区三区四区 | 亚洲狠狠 | 国产一区二区三区四区三区四 | 亚洲精品自在在线观看 | 国产一区久久 | 国产一级免费视频 | 91精品国产一二三 | 欧美不卡视频 | 91视频久久 | 黄色成人免费在线观看 | 99r在线| 91看片视频 | 免费一级黄色电影 | 91久久夜色 | 99re视频精品| 成人午夜精品 | 国产精品视频500部 a久久 | 毛片一级网站 | 玖玖视频国产 | 国产精品theporn | 在线永久看片免费的视频 | 熟女毛片 | 91精品国产综合久久久动漫日韩 | 国产精品视频网 | 黑人性hd| 精品视频在线免费观看 | 91精品国产综合久久久久久漫画 | 请别相信他免费喜剧电影在线观看 | 免费一区 | 99这里只有精品视频 | 97成人免费 | av网站在线免费观看 |