隨筆-314  評論-209  文章-0  trackbacks-0
          想必用過Spring的程序員們都有這樣的感覺,Spring把邏輯層封裝的太完美了(個人感覺View層封裝的不是很好)。以至于有的初學者都不知道Spring配置文件的意思,就拿來用了。所以今天我給大家詳細解釋一下Spring的applicationContext.xml文件。Ok,我還是通過代碼加注釋的方式為大家演示:
          以下是詳解Spring的applicationContext.xml文件代碼:
          <!-- 頭文件,主要注意一下編碼 -->
          <?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">
            <!-- 數據庫驅動,我這里使用的是Mysql數據庫 -->
            <property name="driverClassName">
             <value>com.mysql.jdbc.Driver</value>
            </property>
            <!-- 數據庫地址,這里也要注意一下編碼,不然亂碼可是很郁悶的哦! -->
            <property name="url">
             <value>
                 jdbc:mysql://localhost:3306/tie?useUnicode=true&amp;characterEncoding=utf-8
             </value>
            </property>
            <!-- 數據庫的用戶名 -->
            <property name="username">
             <value>root</value>
            </property>
            <!-- 數據庫的密碼 -->
            <property name="password">
             <value>123</value>
            </property>
           </bean>
           <!-- 把數據源注入給Session工廠 -->
           <bean id="sessionFactory"
            class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
            <property name="dataSource">
             <ref bean="dataSource" />
            </property>
            <!-- 配置映射文件 -->
            <property name="mappingResources">
             <list>
              <value>com/alonely/vo/User.hbm.xml</value>
             </list>
            </property>
           </bean>
           <!-- 把Session工廠注入給hibernateTemplate -->
           <!-- 解釋一下hibernateTemplate:hibernateTemplate提供了很多方便的方法,在執行時自動建立 HibernateCallback 對象,例如:load()、get()、save、delete()等方法。 -->

           <bean id="hibernateTemplate"
            class="org.springframework.orm.hibernate3.HibernateTemplate">
            <constructor-arg>
             <ref local="sessionFactory" />
            </constructor-arg>
           </bean>
           <!-- 把DAO注入給Session工廠 -->
           <bean id="userDAO" class="com.alonely.dao.UserDAO">
            <property name="sessionFactory">
             <ref bean="sessionFactory" />
            </property>
           </bean>
           <!-- 把Service注入給DAO -->
           <bean id="userService" class="com.alonely.service.UserService">
            <property name="userDAO">
             <ref local="userDAO" />
            </property>
           </bean>
           <!-- 把Action注入給Service -->
           <bean name="/user" class="com.alonely.struts.action.UserAction">
            <property name="userService">
             <ref bean="userService" />
            </property>
           </bean>
          </beans>
          以上Spring的applicationContext.xml文件我是用的SSH架構,如果您用Spring的MVC架構,其原理也是一樣的。
          posted on 2008-06-07 13:48 xzc 閱讀(18093) 評論(3)  編輯  收藏 所屬分類: Spring

          評論:
          # re: Spring的applicationContext.xml文件 2008-07-20 09:54 | 工工工
          <ref bean="dataSource" />是把把數據源注入給Session工廠
          <ref local="userDAO" />是把Service注入給DAO
          為什么兩個<ref />寫是相反的
            回復  更多評論
            
          # re: Spring的applicationContext.xml文件 2012-05-31 11:09 | 唐龍
          這你就不懂了吧  回復  更多評論
            
          # 第一個class后面的代碼如何點出來[未登錄] 2012-06-05 20:21 | 小張
          <?xml version="1.0" encoding="UTF-8"?>
          <beans
          xmlns="http://www.springframework.org/schema/beans"" target="_new" rel="nofollow">http://www.springframework.org/schema/beans"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:p="http://www.springframework.org/schema/p"
          xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">


          <bean id="dataSource"
          class="org.springframework.jdbc.datasource.DriverManagerDataSource">
          <property name="driverClassName"
          value="com.microsoft.sqlserver.jdbc.SQLServerDriver">
          </property>
          <property name="url"
          value="jdbc:sqlserver://localhost:1433;databaseName=mydb">
          </property>
          <property name="username" value="sa"></property>
          <property name="password" value="111111"></property>
          </bean>
          <bean id="sessionFactory"
          class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
          <property name="dataSource">
          <ref bean="dataSource" />
          </property>
          <property name="hibernateProperties">
          <props>
          <prop key="hibernate.dialect">
          org.hibernate.dialect.SQLServerDialect
          </prop>
          </props>
          </property>
          <property name="mappingResources">
          <list>
          <value>po/Admin.hbm.xml</value></list>
          </property></bean>
          <bean id="AdminDAO" class="dao.AdminDAO">
          <property name="sessionFactory">
          <ref bean="sessionFactory" />
          </property>
          </bean></beans>  回復  更多評論
            
          主站蜘蛛池模板: 大洼县| 东明县| 北川| 昌乐县| 原阳县| 枣阳市| 板桥市| 怀集县| 北川| 泽普县| 太康县| 开远市| 库车县| 新疆| 舒兰市| 凤台县| 太康县| 武平县| 黔南| 富川| 东源县| 鹰潭市| 屯留县| 道孚县| 常宁市| 垣曲县| 呈贡县| 伊川县| 岢岚县| 河源市| 慈溪市| 疏附县| 齐齐哈尔市| 虹口区| 大姚县| 湟源县| 南投市| 巨鹿县| 天津市| 西丰县| 东丰县|