<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 6  文章 - 129  trackbacks - 0
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(14)

    隨筆檔案(6)

    文章分類(467)

    文章檔案(423)

    相冊

    收藏夾(18)

    JAVA

    搜索

    •  

    積分與排名

    • 積分 - 825769
    • 排名 - 49

    最新評論

    閱讀排行榜

    評論排行榜

    HibernateTemplate提供非常多的常用方法來完成基本的操作,比如通常的增加、刪除、修改、查詢等操作,Spring 2.0更增加對命名SQL查詢的支持,也增加對分頁的支持。大部分情況下,使用Hibernate的常規(guī)用法,就可完成大多數(shù)DAO對象的CRUD操作。下面是HibernateTemplate的常用方法簡介:

    q      void delete(Object entity):刪除指定持久化實例

    q      deleteAll(Collection entities):刪除集合內(nèi)全部持久化類實例

    q      find(String queryString):根據(jù)HQL查詢字符串來返回實例集合

    q      findByNamedQuery(String queryName):根據(jù)命名查詢返回實例集合

    q      get(Class entityClass, Serializable id):根據(jù)主鍵加載特定持久化類的實例

    q      save(Object entity):保存新的實例

    q      saveOrUpdate(Object entity):根據(jù)實例狀態(tài),選擇保存或者更新

    q      update(Object entity):更新實例的狀態(tài),要求entity是持久狀態(tài)

    q      setMaxResults(int maxResults):設(shè)置分頁的大小

    下面是一個完整DAO類的源代碼:

    public class PersonDAOHibernate implements PersonDAO

    {

        //采用log4j來完成調(diào)試時的日志功能

    private static Log log = LogFactory.getLog(NewsDAOHibernate.class);

        //以私有的成員變量來保存SessionFactory。

    private SessionFactory sessionFactory;

    //以私有變量的方式保存HibernateTemplate

    private HibernateTemplate hibernateTemplate = null;

             //設(shè)值注入SessionFactory必需的setter方法

        public void setSessionFactory(SessionFactory sessionFactory)

    {

               this.sessionFactory = sessionFactory;

        }

             //初始化本DAO所需的HibernateTemplate

    public HIbernateTemplate getHibernateTemplate()

    {

             //首先,檢查原來的hibernateTemplate實例是否還存在

             if ( hibernateTemplate == null)

             {

                       //如果不存在,新建一個HibernateTemplate實例

                       hibernateTemplate = new HibernateTemplate(sessionFactory);

             }

             return hibernateTemplate;

    }

             //返回全部的人的實例

        public List getPersons()

             {       

                       //通過HibernateTemplatefind方法返回Person的全部實例

               return getHibernateTemplate().find("from Person");

        }

             /**

              * 根據(jù)主鍵返回特定實例

              * @ return 特定主鍵對應(yīng)的Person實例

              * @ param 主鍵值

        public News getNews(int personid)

             {

               return (Person)getHibernateTemplate().get(Person.class, new Integer(personid));

        }

             /**

              * @ person 需要保存的Person實例

              */

        public void savePerson(Person person)

             {                

                       getHibernateTemplate().saveOrUpdate(person);

        }

             /**

              * @ param personid 需要刪除Person實例的主鍵

              * /

        public void removePerson(int personid)

             {

                       //先加載特定實例

               Object p = getHibernateTemplate().load(Person.class, new Integer(personid));

                       //刪除特定實例

               getHibernateTemplate().delete(p);

        }

    }



    posted on 2007-10-01 19:55 Ke 閱讀(23571) 評論(1)  編輯  收藏 所屬分類: hibernate

    FeedBack:
    # re: HibernateTemplate的常規(guī)用法 2008-12-09 22:03 xp0913520
    有收獲了,謝謝  回復(fù)  更多評論
      
    主站蜘蛛池模板: 色婷婷7777免费视频在线观看| 一区二区三区在线免费| 亚洲一级黄色大片| 久久亚洲国产精品成人AV秋霞| 亚洲av不卡一区二区三区| 亚洲VA中文字幕不卡无码| 亚洲国产精品无码专区影院| 久久久久久久尹人综合网亚洲| 亚洲国产成人高清在线观看| 久久精品国产精品亚洲精品 | 亚洲黄色免费网址| 精品女同一区二区三区免费站| 97国产免费全部免费观看| 免费无码AV电影在线观看| 美女被免费视频网站a国产| 在线观看永久免费视频网站| 亚洲AV无码乱码在线观看性色扶| 久久国产成人精品国产成人亚洲| 亚洲精品无码鲁网中文电影| 亚洲网址在线观看你懂的| 亚洲日韩国产精品无码av| 亚洲精品午夜国产va久久| 亚洲熟妇av午夜无码不卡| 国产亚洲人成在线影院| WWW国产成人免费观看视频| 国产三级在线免费| 2020久久精品国产免费| 日韩免费视频播放| 亚洲中文字幕丝袜制服一区| 久久精品亚洲一区二区| 色在线亚洲视频www| 国产产在线精品亚洲AAVV| 三上悠亚在线观看免费| 57pao国产成视频免费播放| 大学生a级毛片免费观看| 亚洲国产精品无码久久青草| 亚洲av永久无码精品秋霞电影影院| 亚洲国产成人91精品| 亚洲av日韩综合一区久热| 国产一级在线免费观看| 国产精品爱啪在线线免费观看|