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

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

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

    隨筆-9  評論-168  文章-266  trackbacks-0

            題外話:之從有了框架后,后臺的一切開發都變的不那么復雜了,應該說成是簡單了.對于數據訪問的開發,都是趨于接口的編程.記住,接口編程!

      (一)數據訪問層開發:            (importorg.springframework.orm.hibernate3.support.HibernateDaoSupport;)
            (1) 創建數據訪問層接口.
            (2) 創建 public class 數據訪問層實現類 extends HibernateDaoSupport implements 數據訪問層接口.
                 在實現類的方法(throw DataAccessException)中封裝 getHibernateTemplate().save(user) 等Spring已封裝的持久化方法.(注:如果使用Hibernate API 要用try{}catch{}自行處理導常.)

             *************************************

       (二)業務邏輯層開發:
             (1)創建業務邏輯層接口.
             (2)創建 public class 業務邏輯層實現類 implements 業務邏輯層接口.
                 在實現類中. 引用的數據訪問層對象實例采用DI的設值方式注入
                                       在業務邏輯方法(throw DataAccessException)中,使用數據訪問層對象實例來訪問數據庫. 
                *************************************

        (三) Spring 配置文件
               (1)配置數據源          <bean id="dataSource" ...>
               (2)配置會話工廠     <bean id="sessionFactory" ...>
               (3)配置事務管理器  <bean id="transactionManager" ...>
               (4)配置事務代理      www.tkk7.com/algz/articles/163236.html
    例:
       <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
     
    <beans>
         
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
               
    <property name="driverClassName">
                     
    <value>com.mysql.jdbc.Driver</value>
              
    </property>
              
    <property name="url">
                    
    <value>jdbc:mysql://localhost/test</value>
               </property>
              
    <property name="username">
                    
    <value>用戶名</value>            <!-- <value />設置的值,自動轉換為字符串,不用加引號.如:"用戶名" X  -->
               
    </property>
               
    <property name="password">
                     
    <value>密碼</value>
                
    </property>
            
    </bean>
     
     
    <!-- 配置sessionFactory  -->
      
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            
    <property name="dataSource">   <!-- 數據源 -->
                   <ref local="dataSource" />
             
    </property>
            
    <property name="mappingResources">    <!-- ORM映射文件 -->
                  
    <list>
                       
    <value>com/test/Hibernate/User.hbm.xml</value>
                  
    </list>
             
    </property>
             
    <property name="hibernateProperties">    <!-- Hibernate 屬性 -->
                   
    <props>
                         
    <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
                         
    <prop key="hibernate.show_sql">true</prop>        <!--控制臺顯示-->
                     </props>
              
    </property>
         
    </bean>

             <!-- 配置事務管理器  -->
             <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
                   <property name="sessionFactory">
                        <ref local="sessionFactory" />
                   </property>
             </bean>
     
             <bean id="userDAO" class="com.test.數據訪問層實現類">
                   <property name="sessionFactory">
                         <ref local="sessionFactory" />
                   </property>
             </bean>
     
             <!-- 聲明式事務代理其中方法一  -->
             <bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
                   <property name="transactionManager">
                         <ref bean="transactionManager" />
                   </property>
                   <property name="target">
                         <ref local="userDAO" />
                   </property>
                   <property name="transactionAttributes">
                         <props>
                               <prop key="insert*">PROPAGATION_REQUIRED</prop>
                               <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
                               <prop key="is*">PROPAGATION_REQUIRED,readOnly</prop>
                         </props>
                     </property>
               </bean>
     
              <bean name="/login" class="業務層實現類" singleton="false">
                    <property name="userDAO">
                          <ref bean="userDAOProxy" />
                    </property>
              </bean>
        </beans>
    posted on 2008-03-18 17:39 紫蝶∏飛揚↗ 閱讀(925) 評論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 亚洲综合色一区二区三区小说| 亚洲AV无码专区国产乱码4SE| 亚洲午夜国产精品| 最近免费中文字幕mv在线电影 | 国产免费拔擦拔擦8x| 亚洲高清一区二区三区电影| 免费理论片51人人看电影| 精品久久久久久亚洲综合网| 一本久久综合亚洲鲁鲁五月天| 人妻18毛片a级毛片免费看| 爱情岛论坛网亚洲品质自拍| 香蕉免费一级视频在线观看| 亚洲精品二区国产综合野狼| 无码国产精品一区二区免费3p| 亚洲资源在线视频| 毛片a级毛片免费观看免下载| 亚洲а∨精品天堂在线| 亚洲一级特黄大片无码毛片 | 99蜜桃在线观看免费视频网站| 91情国产l精品国产亚洲区 | 国产在线观看免费观看不卡| 亚洲天然素人无码专区| 内射无码专区久久亚洲| 最好免费观看高清在线| 亚洲成人网在线播放| 国产精品成人四虎免费视频| A国产一区二区免费入口| 亚洲成人黄色在线| 亚洲精品第一国产综合精品99| 国偷自产一区二区免费视频| 亚洲人成网站看在线播放| 亚洲国产成人精品女人久久久 | 国产情侣激情在线视频免费看| 国产亚洲美女精品久久久久| 国产亚洲人成无码网在线观看| 精品国产无限资源免费观看| 水蜜桃视频在线观看免费| 亚洲国产高清人在线| 免费va人成视频网站全| 91人成网站色www免费下载| 国产青草亚洲香蕉精品久久 |