赞
踩
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context"
- xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://www.springframework.org/schema/aop
- http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-2.5.xsd
- http://www.springframework.org/schema/tx
- http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
- <context:component-scan base-package="cn.itcast.spring0909.jdbc.transaction.annotation"></context:component-scan>
- <!--
- dataSource
- -->
- <bean
- class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
- <property name="locations">
- <value>classpath:jdbc.properties</value>
- </property>
- </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>
- <!--
- jdbcTemplate
- -->
- <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
- <property name="dataSource">
- <ref bean="dataSource"/>
- </property>
- </bean>
- <!--
- 事务管理器
- -->
- <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
- <property name="dataSource">
- <ref bean="dataSource"/>
- </property>
- </bean>
- <!--
- 启动事务的注解解析器
- -->
- <tx:annotation-driven transaction-manager="transactionManager"/>
- </beans>
- public interface PersonDao {
- public void savePerson();
- }
- @Repository("personDao")
- public class PersonDaoImpl implements PersonDao{
- @Resource(name="jdbcTemplate")
- //这里这能保存jdbcTemplate变量的方式不能继承jdbcSupport
- private JdbcTemplate jdbcTemplate;
- @Override
- public void savePerson() {
- // TODO Auto-generated method stub
- this.jdbcTemplate.execute("insert into person(pname) values('aa')");
- int a = 1/0;
- this.jdbcTemplate.execute("insert into person(pname) values('aa')");
- }
- }
- public interface PersonService {
- public void savePerson();
- }
- @Service("personService")
- public class PersonServiceImpl implements PersonService{
-
- @Resource(name="personDao")
- private PersonDao personDao;
- /**
- * 注解的粒度比xml要细
- */
- @Transactional(readOnly=false)//这才是重点
- public void savePerson() {
- // TODO Auto-generated method stub
- this.personDao.savePerson();
- }
-
- }
- public class PersonTest extends SpringHelper{
- static{
- path = "cn/itcast/spring0909/jdbc/transaction/annotation/applicationContext.xml";
- }
-
- @Test
- public void test(){
- PersonService personService = (PersonService)context.getBean("personService");
- personService.savePerson();
- }
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。