spring 配置文件分解

来源:互联网 发布:王源同款衣服淘宝 编辑:程序博客网 时间:2024/04/30 17:44

 1。 spring 多个配置文件的整合:

from: http://lihongyang66.javaeye.com/blog/493960

 

 

spring配置分解按模块分解,比把成百个bean写到一个文件中要清楚的多,找bean修改也方便的多,同时减少团队开发修改一个文件产生的冲突。

 

web中的配置

Java代码 复制代码
  1. <context-param>   
  2.         <param-name>contextConfigLocation</param-name>   
  3.         <param-value>WEB-INF/classes/spring*.xml</param-value>
  4. </context-param>   
  5.   
  6. <listener>   
  7.         <listener-class>   
  8.             org.springframework.web.context.ContextLoaderListener   
  9.         </listener-class>   
  10.  </listener>   

 

spring主文件spring.xml(默认为applicationContext.xml,也放到web.xml中指定的路径下:WEB-INF/classes/)

Java代码 复制代码
  1. <beans xmlns="http://www.springframework.org/schema/beans"  
  2.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">   
  4.        
  5.     <bean id="springUtil" class="com.cplat.util.SpringUtil"></bean>   
  6.   
  7.     <import resource="classpath:com/cplat/**/spring-*.xml" />   
  8.        
  9. </beans>  

 

模块中的配置文件

Java代码 复制代码
  1. <beans xmlns="http://www.springframework.org/schema/beans"  
  2.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  3.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">   
  4.   
  5.    <bean id="userDao" class="com.cplat.modules.user.UserDaoImpl">   
  6.         <property name="sessionFactory" ref="sessionFactory"></property>   
  7.    </bean>   
  8.    <bean id="userService" class="com.cplat.modules.user.UserServiceImpl">   
  9.         <property name="userDao" ref="userDao"></property>   
  10.    </bean>   
  11.    <bean id="userAction" class="com.cplat.modules.user.UserAction">   
  12.         <property name="userService" ref="userService"></property>   
  13.         <property name="roleService" ref="roleService"></property>   
  14.    </bean>   
  15. </beans>  

 

2。 spring读取jdbc配置文件:

from: http://fhqllt.javaeye.com/blog/505587

 

  1. <bean id="propertyConfigurer"         
  2.         class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">          
  3.     <property name="location" value="/WEB-INF/jdbc.properties"/>          
  4. </bean>          
  5. <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"           
  6.         destroy-method="close">          
  7.     <property name="driverClassName" value="${jdbc.driverClassName}" />          
  8.     <property name="url" value="${jdbc.url}" />          
  9.     <property name="username" value="${jdbc.username}" />          
  10.     <property name="password" value="${jdbc.password}" />          
  11. </bean>       
  12.   

 

    在jdbc.properties属性文件中定义属性值:    

  1.     jdbc.driverClassName= com.mysql.jdbc.Driver    
  2.     jdbc.url= jdbc:mysql://localhost:3309/sampledb    
  3.     jdbc.username=root    
  4.    jdbc.password=1234    

 

3。 指定hibernate映射文件

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource">
     <ref local="dataSource"/>
    </property>
    <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">
                    org.hibernate.dialect.OracleDialect
                </prop>
                <prop key="hibernate.show_sql">
                  true
                </prop>
            </props>
        </property>
        <property name="mappingDirectoryLocations">
            <list>
                <value>/WEB-INF/config/hibernate/</value>
            </list>
        </property>

  </bean>

 

其中斜体部分制定的是映射文件所在的目录,也可列出每个文件:

<property name="mappingResources">
   <list>
    <value>/WEB-INF/config/hibernate/User.hbm.xml</value>

    <value>/WEB-INF/config/hibernate/Book.hbm.xml</value>

      ......
   </list>
  </property>