现在的位置: 首页 > 综合 > 正文

SSH配置:spring:applicationConfig.xml

2019年05月12日 ⁄ 综合 ⁄ 共 7381字 ⁄ 字号 评论关闭

转载自:这里

近来做了一个小项目,用到了Struts1.x,Spring 2.5和Hibernate3,其中的一些配置文件较为典型,所以拿到这里来和大家分享。

  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:p="http://www.springframework.org/schema/p"
  5.        xmlns:aop="http://www.springframework.org/schema/aop"
  6.        xmlns:tx="http://www.springframework.org/schema/tx"
  7.        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
  8.        http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
  9.        http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
  10.     <!--
  11.     ======================集成Hibernate,配置SessionFactory和数据源======================
  12.     -->
  13.     <!-- 数据源由Hibernate配置 -->
  14.     <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  15.         <property name="configLocation">
  16.             <value>classpath:hibernate.cfg.xml</value>
  17.         </property>
  18.     </bean>
  19.     <!-- 数据源交给Spring配置
  20.     <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
  21.         <property name="jndiName" value="jdbc/st"/>
  22.     </bean>
  23.     <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
  24.         <property name="dataSource" ref="dataSource"/>
  25.         <property name="mappingResources">
  26.             <list>
  27.                 <value>edu/st/persistence/User.hbm.xml</value>
  28.                 <value>edu/st/persistence/News.hbm.xml</value>
  29.                 <value>edu/st/persistence/DownFile.hbm.xml</value>
  30.             </list>
  31.         </property>
  32.         <property name="hibernateProperties">
  33.             <props>
  34.                 <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
  35.                 <prop key="hibernate.show_sql">true</prop>
  36.                 <prop key="hibernate.hbm2ddl.auto">update</prop>
  37.             </props>
  38.         </property>
  39.     </bean>
  40.     -->
  41.     
  42.     <!--
  43.     ===========================配置事务支持======================================
  44.     -->
  45.     <!-- 配置事务管理器 -->
  46.     <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
  47.         <property name="sessionFactory">
  48.             <ref bean="sessionFactory"/>
  49.         </property>
  50.     </bean>
  51.     <!-- 配置事务的传播特性 -->
  52.     <tx:advice id="txAdvice" transaction-manager="transactionManager">
  53.         <tx:attributes>
  54.             <tx:method name="add" propagation="REQUIRED"/>
  55.             <tx:method name="delete" propagation="REQUIRED"/>
  56.             <tx:method name="update" propagation="REQUIRED"/>
  57.             <tx:method name="*" read-only="true"/>
  58.         </tx:attributes>
  59.     </tx:advice>
  60.     <!-- 那些类的哪些方法参与事务 -->
  61.     <aop:config>
  62.         <aop:pointcut id="allManagerMethod" expression="execution(* org.scorpio.business.*.*(..))"/>
  63.         <aop:advisor pointcut-ref="allManagerMethod" advice-ref="txAdvice"/>
  64.     </aop:config>
  65.     
  66.     <!--
  67.      ===========================DAO层组件配置====================================
  68.     -->
  69.     <bean id="userDAO" class="org.scorpio.dao.UserDAOImpl">
  70.         <property name="sessionFactory" ref="sessionFactory"/>
  71.     </bean>
  72.     <bean id="managerDAO" class="org.scorpio.dao.ManagerImpl">
  73.         <property name="sessionFactory" ref="sessionFactory"/>
  74.     </bean>
  75.     <!--
  76.     ==========================业务逻辑层组件配置=================================
  77.     -->
  78.     <bean id="userService" class="org.scorpio.business.UserServiceImpl">
  79.         <property name="userDAO" ref="userDAO"/>
  80.     </bean>
  81.     <bean id="managerService" class="org.scorpio.business.ManagerServiceImpl">
  82.         <property name="managerDAO" ref="managerDAO"/>
  83.     </bean>
  84.     <!--
  85.     ======================集成Struts,web层的Action配置==========================
  86.     -->
  87.     <bean name="/userAction" class="org.scorpio.web.action.UserAction">
  88.         <property name="userService" ref="userService"/>
  89.     </bean>
  90.     <bean name="/managerAction" class="org.scorpio.web.action.ManagerAction">
  91.         <property name="managerService" ref="managerService"/>
  92.     </bean>
  93.     <bean name="/loginAction" class="org.scorpio.web.action.LoginAction">
  94.         <property name="userService" ref="userService"/>
  95.         <property name="managerService" ref="managerService"/>
  96.     </bean>
  97.     
  98. </beans>

=====================================================================================

另一份 application-config.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context" 
       xmlns:jdbc="http://www.springframework.org/schema/jdbc"  
       xmlns:jee="http://www.springframework.org/schema/jee" 
       xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:jpa="http://www.springframework.org/schema/data/jpa"
       xsi:schemaLocation="
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
		http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.0.xsd
		http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.0.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
		http://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa.xsd"
	default-lazy-init="true">

	<description>Spring公共配置 </description>
	
	<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
          <property name="dataSource" ref="dataSource"></property>
       </bean>
    

	<!-- JPA实体管理工厂的配置 -->
	<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
		<property name="dataSource" ref="dataSource"/>
		<property name="jpaVendorAdapter" ref="hibernateJpaVendorAdapter"/>
		<property name="packagesToScan" value="cn.bean, cn.rd.bean"/><!--待扫描的实体类包,不再需要 persistence.xml了-->
		<property name="jpaProperties">
			<props>
             			<prop key="hibernate.ejb.naming_strategy">org.hibernate.cfg.ImprovedNamingStrategy</prop>
				<prop key="hibernate.show_sql">true</prop>
				<prop key="hibernate.hbm2ddl.auto">update</prop>
			</props>
		</property>
	</bean>
	
	<!--指定实现JPA的适配器-->
	<bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
		<property name="databasePlatform" value="org.hibernate.dialect.SQLServerDialect" />
	</bean>
	
	<!-- Jpa 事务配置 -->
	<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
		<property name="entityManagerFactory" ref="entityManagerFactory"/>
	</bean>
	
	<!-- Spring Data Jpa配置 -->
	<jpa:repositories base-package="cn.thunderbird.csg.repository, cn.thunderbird.rd.repository" entity-manager-factory-ref="entityManagerFactory" transaction-manager-ref="transactionManager">
	</jpa:repositories>
	
	
	
	<!-- local development环境 -->
	<beans profile="development">
		<context:property-placeholder ignore-resource-not-found="true"
			location="classpath*:spring/jdbc.properties" />	

		<!-- DBCP连接池 -->
		<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
			<property name="driverClassName" value="${jdbc.driver}" />
			<property name="url" value="${jdbc.url}" />
			<property name="username" value="${jdbc.username}" />
			<property name="password" value="${jdbc.password}" />
			<property name="defaultAutoCommit" value="false" />
		</bean>
	</beans>
	
</beans>

抱歉!评论已关闭.