getHibernateTemplate()的用法

getHibernateTemplate()spring

spring 中得到由spring所配置的hibernate的操做對象,而後利用此對象進行,保存,修改和刪除等操做,
此方法是在配置了spring之後,hibernate由spring接管,不直接使用hibernate的session了
HibernateTemplate提供很是多的經常使用方法來完成基本的操做,好比一般的增長、刪除、修改、查詢等操做,
Spring 2.0更增長對命名SQL查詢的支持,也增長對分頁的支持。大部分狀況下,
使用Hibernate的常規用法,就可完成大多數DAO對象的CRUD操做。
下面是HibernateTemplate的經常使用方法簡介:
數據庫

q void delete(Object entity):刪除指定持久化實例
q deleteAll(Collection entities):刪除集合內所有持久化類實例
q find(String queryString):根據HQL查詢字符串來返回實例集合session

q findByNamedQuery(String queryName):根據命名查詢返回實例集合
q get(Class entityClass, Serializable id):根據主鍵加載特定持久化類的實例
q save(Object entity):保存新的實例 q saveOrUpdate(Object entity):根據實例狀態,選擇保存或者更新
q update(Object entity):更新實例的狀態,要求entity是持久狀態spa

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


getHibernateTemplate已經封裝好了一些基本的方法,能夠直接去用,也就是template嘛,
而getSession只是獲取一個數據工廠的session,而後大部分方法都須要本身寫,加hql語句,而後用query方法執行對象

談不上什麼優勢缺點,相似添加刪除更新這樣的能夠直接用getHibernateTemplate而大部分帶條件查詢的就須要用getSession本身寫了

Hibernate封裝了對數據庫的例行操做,比單純的jdbc的DAO,開發效率要高不少了。而Springframework對Hibernate的操做又進行了進一步的包裝,
又將開發效率提高很多。
開發

相關文章
相關標籤/搜索