<? 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: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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-3.0.xsd">
< context:annotation-config />
< context:component-scan base-package = "com.fz.annotation" />
< bean
class = "org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" >
< property name = "locations" value = "classpath:jdbc.properties" />
</ bean >
< bean id = "dataSource" destroy-method = "close"
class = "org.apache.commons.dbcp.BasicDataSource" >
< property name = "driverClassName" value = "${jdbc.driverClassName}" />
< property name = "url" value = "${jdbc.url}" />
< property name = "username" value = "${jdbc.username}" />
< property name = "password" value = "${jdbc.password}" />
</ bean >
< bean id = "sessionFactory"
class = "org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean" >
< property name = "dataSource" ref = "dataSource" />
< property name = "packagesToScan" >
< list >
< value >com.fz.annotation.model</ value >
</ list >
</ property >
< property name = "hibernateProperties" >
< props >
< prop key = "hibernate.dialect" >org.hibernate.dialect.MySQLDialect</ prop >
< prop key = "hibernate.show_sql" >true</ prop >
< prop key = "hibernate.format_sql" >true</ prop >
</ props >
</ property >
</ bean >
<!-- 使用xml方式管理事务 -->
< bean id = "txManager"
class = "org.springframework.orm.hibernate3.HibernateTransactionManager" >
< property name = "sessionFactory" ref = "sessionFactory" />
</ bean >
< aop:config >
< aop:pointcut
expression = "execution(public * com.fz.annotation.service..*.*(..))"
id = "bussinessService" />
< aop:advisor advice-ref = "txAdvice" pointcut-ref = "bussinessService" />
</ aop:config >
< tx:advice id = "txAdvice" transaction-manager = "txManager" >
< tx:attributes >
<!-- 所有以find开头的方法,readOnly=true -->
< tx:method name = "find*" read-only = "true" />
< tx:method name = "add*" propagation = "REQUIRED" />
< tx:method name = "insert*" propagation = "REQUIRED" />
< tx:method name = "update*" propagation = "REQUIRED" />
< tx:method name = "del*" propagation = "REQUIRED" />
< tx:method name = "delete*" propagation = "REQUIRED" />
</ tx:attributes >
</ tx:advice >
</ beans >
|