JDBC中DAO事务函数模版

DAO事物函数模版

public void OrderFinsByPage(){
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;

        try {

            conn = DBUtils.getConnection();
            //事务开始
            conn.setAutoCommit(false);
            //业务逻辑

            conn.commit();

        } catch (Exception e) {
            try {
                conn.rollback();
            } catch (SQLException sqkex) {
                // TODO Auto-generated catch block
                sqkex.printStackTrace();
            }
            e.printStackTrace();
        }finally {
            try {
                conn.setAutoCommit(true);
                if(conn !=null)  conn.close();
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }

        }

    }
时间: 2024-10-18 16:20:52

JDBC中DAO事务函数模版的相关文章

JDBC中的事务-Transaction

事务-Transaction 某些情况下我们希望对数据库的某一操作要么整体成功,要么整体失败,经典的例子就是支付宝提现.例如我们发起了支付宝到银行卡的100元提现申请,我们希望的结果是支付宝余额减少100元,银行卡余额增加100元,而不是支付宝的100元被扣除,而银行卡的100元却没收到.也就是说,要么100元从支付宝扣除的同时银行卡也会多出一百元,要么这次提现失败支付宝的100元还在,银行卡也没有收到钱.支付宝扣钱和银行卡收钱,这两件事要么都成功要么都失败. 事物的ACID特性: 满足ACID

Java数据库连接——JDBC调用存储过程,事务管理和高级应用

阅读目录 一.JDBC常用的API深入详解及存储过程的调用1.存储过程(Stored Procedure)的介绍2.JDBC调用无参存储过程3.JDBC调用含输入参数存储过程4.JDBC调用含输出参数存储过程二.JDBC的事务管理1.JDBC实现事务管理2.通过代码实现事物的管理三.数据库连接池(dbcp.c3p0)1.dbcp使用步骤2.c3p0使用步骤3.连接池总结四.JDBC的替代产品(Hibernate.Mybatis)1.Commons-dbutils 2.Hibernate简介3.M

JDBC&&c3p0、事务、批处理、多线程 于一体的经典秘方QueryRunner (common-dbutils)

目录: 基础篇_功能各自回顾 JDBC基础代码回顾(使用JdbcUtils工具简化) c3p0数据库连接池的使用(使用JdbcUtils工具简化) 大数据的插入(使用c3p0+JdbcUtils工具简化) 批处理操作(使用c3p0+JdbcUtils工具简化) 数据库中的事务处理(使用c3p0+JdbcUtils工具简化) 多线程的并发控制 进阶篇_迈向标准开发        自己编写dbutils工具( QueryRunner .TxQueryRunner和JdbcUtils)   (本文核心

转账案例中引入事务

JSP模式&JDBC 使用MVC设计模式开发一个转账案例 JSP的回顾 JSP : * JSP的概述: * JSP:Java Server Pages. * JSP的运行原理:翻译成Servlet,编译成Class进行执行. * JSP的脚本元素: * <%!   %> * <%    %> * <%=   %> * JSP的注释: * JSP的三个指令: * page,include,taglib   <%@ 指令名称 属性="属性值"

JDBC应用中的事务管理

在开发中,对数据库的多个表或者对一个表中的多条数据执行更新操作时要保证对多个更新操作要么同时成功,要么都不成功,这就涉及到对多个更新操作的事务管理问题了.比如银行业务中的转账问题,A用户向B用户转账100元,假设A用户和B用户的钱都存储在Account表,那么A用户向B用户转账时就涉及到同时更新Account表中的A用户的钱和B用户的钱,用SQL来表示就是: update account set money=money-100 where name='A'; update account set

浅析在类模版中构建成员函数时,使用memcpy产生的副作用

一般情况下我们在对类模版中的成员函数进行构建时会经常对一些数据进行复制拷贝,而通常情况下我们都不提倡用memcpy进行拷贝,因为在类模版中所传进来的类型可以是内置类型也可以是非内置类型,除非你在成员函数中使用memcpy前进行类型萃取,否则它所带来的副作用的后果也是很可怕的.memcpy在对内置类型可正常拷贝,而在对非内置类型拷贝时会出现浅拷贝的现象. 下面我们可以通过一个简单的顺序表程序来分析memcpy对非内置类型所产生的副作用: #include<iostream> #include&l

在Hibernate中分别使用JDBC和JTA事务的方法

在Hibernate中使用JDBC事务 Hibernate对JDBC进行了轻量级的封装,它本身在设计时并不具备事务处理功能.Hibernate将底层的JDBCTransaction或JTATransaction进行了封装,再在外面套上Transaction和Session的外壳,其实是通过委托底层的JDBC或JTA来实现事务的处理功能的. 要在Hibernate中使用事务,可以在它的配置文件中指定使用JDBCTransaction或者JTATransaction.在hibernate.prope

Java中的事务——JDBC事务和JTA事务

本文来介绍一下J2EE中和事务相关的内容,在阅读本文之前,希望读者对分布式有一定的了解. Java事务的类型有三种:JDBC事务.JTA(Java Transaction API)事务.容器事务. 常见的容器事务如Spring事务,容器事务主要是J2EE应用服务器提供的,容器事务大多是基于JTA完成,这是一个基于JNDI的,相当复杂的API实现.所以本文暂不讨论容器事务.本文主要介绍J2EE开发中两个比较基本的事务:JDBC事务和JTA事务. JDBC事务 JDBC事务,就是在Java中用来控制

JAVAEE——spring03:spring整合JDBC和aop事务

一.spring整合JDBC 1.spring提供了很多模板整合Dao技术 2.spring中提供了一个可以操作数据库的对象.对象封装了jdbc技术. JDBCTemplate => JDBC模板对象 与DBUtils中的QueryRunner非常相似. //0 准备连接池 ComboPooledDataSource dataSource = new ComboPooledDataSource(); dataSource.setDriverClass("com.mysql.jdbc.Dri