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:aop="http://www.springframework.org/schema/aop"
- xmlns:tx="http://www.springframework.org/schema/tx"
- xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
- http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
- http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
- <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
- <property name="dataSource">
- <ref bean="dataSource" />
- </property>
- <property name="hibernateProperties">
- <ref bean="hibernateProperties" />
- </property>
- <property name="mappingResources">
- <list>
- <value>com/comwave/demo/webui/user/domain/User.hbm.xml</value>
- <value>com/comwave/demo/webui/user/domain/Role.hbm.xml</value>
- <value>com/comwave/demo/webui/user/domain/ActionInfo.hbm.xml</value>
- </list>
- </property>
- </bean>
- <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
- <property name="sessionFactory">
- <ref local="sessionFactory" />
- </property>
- </bean>
- <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
- <property name="sessionFactory">
- <ref local="sessionFactory" />
- </property>
- </bean>
- <bean id="baseTxProxy" lazy-init="true"
- class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
- <property name="transactionManager">
- <ref bean="transactionManager" />
- </property>
- <property name="transactionAttributes">
- <props>
- <prop key="*">PROPAGATION_REQUIRED</prop>
- </props>
- </property>
- </bean>
- <tx:advice id="txAdvice" transaction-manager="transactionManager">
- <tx:attributes>
- <tx:method name="*" propagation="REQUIRED"/>
- </tx:attributes>
- </tx:advice>
- <tx:advice id="txReadOnlyAdvice" transaction-manager="transactionManager">
- <tx:attributes>
- <tx:method name="*" read-only="false"/>
- </tx:attributes>
- </tx:advice>
- <aop:config proxy-target-class="true">
- <aop:pointcut id="tx1" expression="execution(* com.comwave.demo..*Manager*.*(..))"/>
- <aop:pointcut id="tx2" expression="execution(* com.comwave.demo..UserManager*.*(..))"/>
- <aop:advisor advice-ref="txAdvice" pointcut-ref="tx1" order="1"/>
- <aop:advisor advice-ref="txReadOnlyAdvice" pointcut-ref="tx2" order="2"/>
- </aop:config>
- <bean id="userManager" class="com.comwave.demo.webui.user.impl.UserManagerImpl">
- <property name="hibernateTemplate" ref="hibernateTemplate" />
- <property name="functionManager" ref="functionManager"/>
- </bean>
- <bean id="functionManager" class="com.comwave.demo.webui.user.impl.FunctionManagerImpl">
- <property name="hibernateTemplate" ref="hibernateTemplate" />
- </bean>
- </beans>