<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      當時年少春衫薄

      萬丈高樓平地起,盤龍臥虎高山齊

      博客園 首頁 新隨筆 聯系 訂閱 管理
       
       1.首先導入Spring和Hibernate的核心包,然后在分別導入commons-dbsp-1.4.jar和commons-pool-1-6.jar包
       2.Spring提供DAO支持Spring提供了多種數據庫訪問技術的DAO支持,包括Hibernate,JDO,TopLink,iBatis,OJB等。Spring可以使用相同的訪問模式,不同的數據庫訪問技術就Hibernate的持久層訪問技術而言。Spring提供了如下3個工具類(或接口)來支持DAO組件的實現。
       3.數據訪問層繼承Spring框架里面模板HibernateTemplete提供的HibernateDaoSupport抽象類
       4.配置數據源連接和定義SessionFactory bean【注意我這里用的是oracle數據庫】 
       
      4.1Spring的applicationContext.xml配置文件示例 
       1 <?xml version="1.0" encoding="UTF-8"?>
       2 <beans xmlns="http://www.springframework.org/schema/beans"
       3      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       4      xmlns:aop="http://www.springframework.org/schema/aop"
       5      xmlns:context="http://www.springframework.org/schema/context"
       6      xmlns:p="http://www.springframework.org/schema/p"  
       7      xsi:schemaLocation="
       8        http://www.springframework.org/schema/beans 
       9        http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      10        http://www.springframework.org/schema/aop 
      11        http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
      12        http://www.springframework.org/schema/context
      13        http://www.springframework.org/schema/context/spring-context-3.0.xsd
      14    ">
      15    
      16 <!-- 配置基礎數據源bean -->
      17 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
      18     <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
      19     <property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"></property>
      20     <property name="username" value="system"></property>
      21     <property name="password" value="orcl"></property>
      22 </bean>
      23 <!-- 配置Session會話工廠bean-->
      24 <bean id="sessionFactory"  class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
      25      <property name="dataSource" ref="dataSource"/>
      26     <!--第一種方式:添加指定的對象關系映射文件-->
      27     <!-- <property name="mappingResources">
      28         <list>
      29             <value>com/myCinema/entity/Category.hbm.xml</value>
      30             <value>com/myCinema/entity/Movie.hbm.xml</value>
      31             <value>com/myCinema/entity/User.hbm.xml</value>
      32         </list>
      33     </property> -->
      34     <!--第二種方式:添加對象關系映射文件的所在路徑-->
      35     <property name="mappingDirectoryLocations">
      36         <list>
      37             <value>classpath:com/musicstore/entity/</value>
      38         </list>
      39     </property> 
      40     <property name="hibernateProperties">
      41         <props>
      42             <prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>
      43             <prop key="hibernate.show_sql">true</prop>
      44         </props>
      45 </property>
      46 </bean>
      47 
      48     <!--配置日志切面-->
      49    <bean id="logAdvice"  class="com.musicstore.aop.logAdvice"></bean>
      50    
      51    <bean id="iAlbum"  class="com.musicstore.daoimpl.AlbumDaoImpl" >
      52           <property name="sessionFactory"  ref="sessionFactory"></property>
      53     </bean>
      54    <bean id="iGenre"  class="com.musicstore.daoimpl.GenreDaoImpl">
      55          <property name="sessionFactory"  ref="sessionFactory"></property>
      56    </bean>
      57    <bean id="iOrder"  class="com.musicstore.daoimpl.OrderDaoImpl">
      58            <property name="sessionFactory"  ref="sessionFactory"></property>
      59    </bean>
      60    <bean id="iOrderDetail"  class="com.musicstore.daoimpl.OrderDetailDaoImpl">
      61         <property name="sessionFactory"  ref="sessionFactory"></property>
      62    </bean>
      63    <bean id="iUser"  class="com.musicstore.daoimpl.UserDaoImpl">
      64         <property name="sessionFactory"  ref="sessionFactory"></property>
      65    </bean>
      66    <bean id="iUserRole"  class="com.musicstore.daoimpl.UserRoleDaoImpl">
      67          <property name="sessionFactory"  ref="sessionFactory"></property>
      68    </bean>     
      69 </beans>

      5.數據訪問層的示例代碼

        1 package com.musicstore.daoimpl;
        2 
        3 import java.sql.SQLException;
        4 import java.util.ArrayList;
        5 import java.util.HashMap;
        6 import java.util.List;
        7 import java.util.Map;
        8 
        9 import org.hibernate.HibernateException;
       10 import org.hibernate.Query;
       11 import org.hibernate.Session;
       12 import org.springframework.orm.hibernate3.HibernateCallback;
       13 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;
       14 
       15 import com.musicstore.dao.IAlbum;
       16 import com.musicstore.entity.Album;
       17 
       18 public class AlbumDaoImpl extends HibernateDaoSupport implements IAlbum {
       19 
       20     //獲取全部信息
       21     @Override
       22     public List<Album> getAll(){
       23          String hql="from Album";
       24          return getHibernateTemplate().find(hql);
       25     }
       26 
       27     //使用持久化類的導航關系進行查詢
       28     @Override
       29     public List<Album> findByGenreId(int gid) {
       30         
       31         String hql="from Album as a where a.genre.id=?";
       32          Object[] params=new Object[]{gid};
       33          return getHibernateTemplate().find(hql,params);
       34     
       35         
       36     }
       37 
       38     //根據名稱模糊查詢,返回一個集合
       39     @Override
       40     public List<Album> findByTitle(String title) {
       41         String hql=" from Album as a where a.title like ?";
       42         return getHibernateTemplate().find(hql, ("%"+title+"%"));
       43     }
       44 
       45     //查詢單個對象
       46     @Override
       47     public Album getById(long id) {
       48          String hql="from Album as a where a.id=? ";
       49          List<Album> list=getHibernateTemplate().find(hql,id);
       50          return list.size()>0?list.get(0):null;
       51     }
       52 
       53     //添加
       54     @Override
       55     public Album insert(Album album) throws Exception {
       56           Album album2=null;
       57           try {
       58                 getHibernateTemplate().save(album);
       59                 album2=album;
       60             } catch (Exception e) {
       61                 return null;
       62             } 
       63           return album2;
       64           
       65     }
       66 
       67      //修改
       68     @Override
       69     public Album update(Album album) throws Exception {
       70           Album album2=null;
       71           try {
       72                 getHibernateTemplate().update(album);
       73                 album2=album;
       74             } catch (Exception e) {
       75                 return null;
       76             } 
       77           return album2;
       78     }
       79 
       80     //根據名稱模糊查詢并進行分頁
       81     @Override
       82     public List<Album> findByIdAndTitlePaging(final int gid, final String title, final int pageIndex, final int pageSize) {
       83         return getHibernateTemplate().execute(new HibernateCallback<List<Album>>() {
       84             @Override
       85             public List<Album> doInHibernate(Session session) throws HibernateException,
       86                     SQLException {
       87                 String hql="from Album as a where 1=1 ";
       88                 Map<String,Object> params=new HashMap<String, Object>();
       89                 List<Album> list=new ArrayList<Album>();
       90                 if(gid>0){
       91                     hql+=" and a.genre.id=:gid";
       92                     params.put("gid",gid);
       93                 }
       94                 if(title!=null){
       95                     hql+=" and a.title like :title ";
       96                     params.put("title","%" +title+"%");
       97                 } 
       98              Query query=session.createQuery(hql);
       99              query.setProperties(params);
      100              query.setFirstResult((pageIndex-1)*pageSize);
      101              query.setMaxResults(pageSize);
      102              list=query.list();
      103             return list;
      104             }
      105         });
      106     }
      107 
      108 
      109 
      110 }

       

       

      6.使用HibernateTemplate

        HibernateTemplate提供持久層訪問模板,使用HibernateTemplate無須實現特定接口,它只需要提供一個SessionFactory的引用就可以執行持久化操作。SessionFactory  對象既可通過構造函數傳入,也可以通過設值傳入。
        HibernateTemplate()
        HibernateTemplate(org.hibernates.SessionFactory sessionFactory) (這個用得較多一點)
        HibernateTemplate(org.hibernates.SessionFactory sessionFactory,boolean allowCreate)

           常用方法:

                 void delete(Object entity):刪除指定持久化實例
                 deleteAll(Collection entities):刪除集合內全部持久化類實例

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

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

                 get(Class entityClass, Serializable id):根據主鍵加載特定持久化類的實例
                 save(Object entity):保存新的實例
                 saveOrUpdate(Object entity):根據實例狀態,選擇保存或者更新
                 update(Object entity):更新實例的狀態,要求entity是持久狀態
                 setMaxResults(int maxResults):設置分頁的大小

       

       


        

       

       
       
      posted on 2015-09-06 23:46  當時年少春衫薄  閱讀(296)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 中文字幕日韩精品国产| 成人免费无码大片a毛片| 国产精品熟女乱色一区二区| 无码一区二区三区av在线播放| 午夜福利国产精品小视频| 国产精品免费看久久久| 广平县| 亚洲午夜福利精品一二飞| 日韩人妻无码中文字幕视频| 国产成人精品亚洲资源| 久久久久免费看少妇高潮A片| 国产91丝袜在线观看| 亚洲av无一区二区三区| 精品国产女同疯狂摩擦2| 中文国产成人精品久久不卡 | brazzers欧美巨大| 国产在线精品欧美日韩电影| 国产一区二区在线观看的| 疯狂做受xxxx高潮欧美日本| 色天使亚洲综合一区二区| 国产成人亚洲欧美二区综合| 中文字幕国产精品自拍| 国产一区二区在线观看粉嫩| 亚洲全网成人资源在线观看| 尤物国精品午夜福利视频| 94人妻少妇偷人精品| 日本高清视频网站www| а∨天堂一区中文字幕 | 精品熟女少妇av免费久久| 99热这里只有成人精品国产| 欧美熟妇乱子伦XX视频| 国产亚洲精品福利在线无卡一 | 综合偷自拍亚洲乱中文字幕| 欧美亚洲人成网站在线观看| 久久精品国产精品亚洲综合| 成人av久久一区二区三区| 国产成人a∨激情视频厨房| 国产成人精品无码免费看夜聊软件| 亚洲av本道一区二区| 亚洲欧美国产日韩天堂区| 亚洲av永久无码精品水牛影视|