`

spring jdbc 事务配置

 
阅读更多

配置WEB.XML

 

 

	<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_0.xsd"
         version="3.0">
         
  <listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>
	
	<!--spring 配置文件路径-->
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>
			classpath:application-config.xml
		</param-value>
		 
	</context-param>
	
</web-app>         

 

   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: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.xsd
           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">



    <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="locations">
            <list>
                <!--  指定配置文件--类路径>
                <value>classpath:/config/db.properties</value>
                <!--  指定配置文件--文件路径>
                <value>file:/home/data/x.properties</value>
                <!--  指定配置文件--WEB-ROOT下路径>
                <value>/WEB-INF/config/jdbc.properties</value>
            </list>
        </property>
    </bean>
    <!--配置数据源-->
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
        <property name="driverClassName" value="${db.jdbc.driverClassName}"/>
        <property name="url" value="${db.jdbc.url}"/>
        <property name="username" value="${db.jdbc.username}"/>
        <property name="password" value="${db.jdbc.password}"/>
    </bean>
    <!--配置事务管理类-->
    <bean id="txManager"
             class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
              <property name="dataSource" ref="dataSource" />
       </bean>
       <!-- 配置jdbcTemplate-->
       <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
              <property name="dataSource" ref="dataSourceMpm"></property>
       </bean>
       <!--事务注解方式-->
       <tx:annotation-driven transaction-manager="dataSource" />

      
        <!---DAO-->
        <bean name="taskDao" class="com.test.task.dao.TaskDao">
            <property name="jdbcTemplate" ref="jdbcTemplate"></property>
        </bean>
        <!--Service-->
        <bean name="taskService" class="com.test.task.service.TaskService">
        	<property name="taskDao" ref="taskDao"></property>
        </bean>
        
     


</beans>

 

  类上事务的声明:

 

@Transactional(rollbackFor=Exception.class)
//标注类中每一个方法都会启用事务,
// rollbackFor=Exception.class:指定当方法抛出Exception时事务回滚。
//@Transactional()未指定rollbackFor时,默认为当抛出RuntimeException时才事务回滚
public class TaskService {

    @Transactional(rollbackFor=RuntimeException.class)
    //以此事务形式启用事务,忽略类上声明的事务形式
    public void triggerTask(){

    }
    //启用事务,继承类上定义的事务形式(@Transactional(rollbackFor=Exception.class))
    public void triggerGeneratorTask(){

    }
    @Transactional(propagation= Propagation.NOT_SUPPORTED,readOnly=true)
    //不启用事务
    public List getRunningTask(){
        return null;
    }
}

 

 

 

 

 

 

分享到:
评论

相关推荐

    Spring JDBC与事务管理

    1、掌握Spring JDBC的配置; 2、掌握JdbcTemplae类中增删改查方法的使用; 3、了解Spring事务管理的3个核心接口; 4、了解Spring事务管理的两种方式; 5、掌握基于XML和Annotation的声明式事务管理的使用。 二.实验...

    spring JDBC事务管理

    在压缩包文件`test_spring_jdbc`中,可能包含了示例代码或者测试用例,用于演示如何在Spring应用中配置和使用JDBC事务管理。通过对这些文件的分析和实践,可以加深对Spring JDBC事务管理的理解和应用。 总结来说,...

    spring_JDBC整合包

    4. **JdbcTransactionManager**: 这是Spring提供的事务管理器,它利用JDBC的API来管理事务,支持编程式和声明式事务控制。 5. **DataSource**: Spring JDBC通常与DataSource一起使用,DataSource是Java的JNDI服务的...

    Spring事务管理和SpringJDBC思维导图

    本话题主要关注Spring的两个重要模块:事务管理和Spring JDBC。这些知识点对于任何使用Spring进行后端开发的程序员来说都是至关重要的。 首先,我们来深入理解Spring事务管理。事务是数据库操作的基本单元,它确保...

    Spring JDBC常用Jar包

    例如,通过Spring JDBC,你可以利用JdbcTemplate执行SQL查询、更新、插入和删除操作,同时利用Spring的事务管理能力来确保数据的一致性。此外,通过依赖注入,你可以将DataSource配置在外部,使得数据库配置的改变...

    spring jdbc 事务

    在描述中提到的博客链接(由于实际链接无法访问,这里无法提供具体细节),可能详细讲述了如何在Spring中配置和使用JDBC事务,包括示例代码和常见问题解决。在实际项目中,理解并正确应用这些事务管理机制对于保证...

    spring jdbc.zip

    Spring JDBC不仅包含了JDBC的基本功能,如数据源配置、事务管理,还引入了模板模式,即JdbcTemplate,进一步降低了数据库操作的复杂性。 JdbcTemplate是Spring JDBC的核心类,它是对JDBC的简单而强大的封装。它提供...

    实例详解Spring JDBC事务管理.doc

    Spring JDBC事务管理 Spring框架提供了两种事务管理方式:编程式的事务管理(Programmatic transaction management...Spring的JDBC事务管理机制提供了灵活的配置选项和强大的事务管理机制,能够满足复杂的业务需求。

    spring整合jdbc的配置

    Spring整合JDBC的配置 Spring框架是 Java 企业级应用开发的标准框架之一,它提供了强大的依赖注入和AOP功能,使得开发者可以更方便地进行企业级应用开发。在实际开发中,我们常常需要将Spring与JDBC集成,以便于...

    JavaEE的Spring JDBC与事务管理 实验

    1、掌握Spring JDBC的配置; 2、掌握JdbcTemplae类中增删改查方法的使用; 3、了解Spring事务管理的3个核心接口; 4、了解Spring事务管理的两种方式; 5、掌握基于XML和Annotation的声明式事务管理的使用。 二、 ...

    spring jdbc示例代码

    3. **Transaction Management**:Spring JDBC支持声明式事务管理,这意味着我们可以在XML配置文件中定义事务边界,而不是在代码中显式地控制事务的开始、提交和回滚。 4. **PreparedStatement**:Spring JDBC鼓励...

    springjdbc.zip_SpringJDBC_spring jdbc_spring 增删改查_springjdbc xml

    综上所述,`springjdbc.zip`文件中的示例可能展示了如何在Spring环境中配置和使用JDBC,包括数据源配置、事务管理、以及使用`JdbcTemplate`执行增删改查操作的完整流程。通过学习这些示例,开发者可以更好地理解和...

    SpringJDBC.rar_SpringJDBC_spring jdbc

    通过这个SpringJDBC.rar的案例,初学者可以学习到如何配置DataSource,如何创建JdbcTemplate实例,以及如何编写和执行SQL语句。同时,实践中还可以了解到如何将Spring JDBC整合到Spring Boot项目中,以及如何处理...

    spring4 、 springmvc4.2、springjdbc

    2. 配置Spring:创建Spring的配置文件,如`applicationContext.xml`,配置Bean、数据源和事务管理器等。 3. 配置Spring MVC:创建Spring MVC的配置文件,如`servlet-context.xml`,配置DispatcherServlet、视图解析...

    spring-jdbc jar包.rar

    在项目中使用"spring-jdbc jar包",开发者需要配置DataSource,并根据需求选择使用JdbcTemplate或其他辅助类。在编写SQL时,可以使用预编译的PreparedStatement来防止SQL注入攻击。此外,还可以利用Spring的AOP...

    Spring JDBC与事务管理源代码

    1、掌握Spring JDBC的配置; 2、掌握JdbcTemplae类中增删改查方法的使用; 3、了解Spring事务管理的3个核心接口; 4、了解Spring事务管理的两种方式; 5、掌握基于XML和Annotation的声明式事务管理的使用。

    spring jdbc相关包版本5.1.3

    6. **spring-tx-5.1.3.RELEASE.jar**:处理事务管理,包括编程式和声明式事务管理,与Spring JDBC紧密配合,确保数据一致性。 7. **mysql-connector-java-8.0.11.jar**:这是MySQL数据库的驱动包,用于建立Java应用...

    SpringJDBC.rar_jdbc spring_spring jd_spring jdbc_spring使用JDBC进行数

    在“www.pudn.com.txt”和“SpringJDBC”这两个文件中,可能包含了具体的代码示例、配置文件或者对这些概念的详细解释。学习这些内容有助于深入理解Spring JDBC的使用,从而更高效地进行数据库操作。 总之,Spring ...

    spring对jdbc的支持jar包

    5. **Transaction Management**:Spring提供了声明式事务管理,允许开发者在配置文件中声明事务边界,而不是在代码中显式管理。这样可以确保事务的正确性和应用程序的健壮性。 6. **DataSourceUtils** 和 **...

    Spring Jdbc的jar包

    Spring JDBC的主要目标是简化数据访问,减少直接使用JDBC时的繁琐工作,如手动管理连接、事务和异常处理。在Spring 3.2.0.RELEASE版本中,这个模块得到了进一步的增强和完善。 首先,`spring-jdbc-3.2.0.RELEASE....

Global site tag (gtag.js) - Google Analytics