jdbc、事务(Transaction)、批处理 回顾
论文写的头疼,回顾一下jdbc,换换脑子
传统的写法:
1.加载驱动类
class.forname("jdbc类的包结构");
2.获得连接
Connection conn=DriverManager.getConnection("url","username","userpwd");
3.获得描述
Ststement stmt =conn.createStstement();
4.执行动作
stmt.executeCreate("sql");
或
ResultSet rs=stmt.executeQuery("sql");
while(rs.next){
}
注意:传统写法安全性不是很好,有可能遭到sql恶意注入的问题
可以将描述替代为
PreparedStatement pstmt=conn.PreparedStatement("sql");
当然此时的sql语句要采用占位符的形式
insert into test(user,name,pwd) values(?,?,?)
同时,在执行动作时,就不必传入“sql”参数
当然在执行动作之前要设置参数
pstmt.setString(1,"");
pstmt.setString(2,"");
pstmt.setInt(3,"");
注意要遵循类型的方式
以上代码不代表具体执行代码,只具备伪代码的功能。
因为有些方法具体怎么拼写,我忘了
凡是涉及到操作数据库,免不了要说说事务(Transaction)了:
事务:保证与数据库操作的过程中,数据的一致性和完整性。
事务的属性:
ACID
即:
Atomic原子性:一堆又一堆的事务操作,要么全都成功,要么全都失败,不存在部分成功或失败的情况
开始事务
一堆事务操作
……
事务结束
Consistency一致性:事务操作前后,数据满足同样的规则
Isolation隔离性:事务内部的数据对外的可见性和可操作性。即不同事务边界内的数据是限制权限的
D稳定性、持久性:事务内部的数据都能够呗正确的持久化
jdbc默认是自动提交的,只要执行动作语句成功,哪怕下一句异常,数据仍然被提交!
jdbc手动设置事务的方法:
首先,关闭jdbc的自动提交功能
conn.setAutoCommit(false);
其次,在执行动作成功后,提交
conn.commit();
最后,如果有异常,事务回滚
conn.rollback();
关于批处理:
即存在多条sql的时候,可通过batch进行批处理
string sql1="……";
string sql2="……";
stmt.addBatch(sql1);
stmt.addBatch(sql2);
完整教程:http://download.csdn.net/detail/u012373717/8874243
jdbc、事务(Transaction)、批处理 回顾的更多相关文章
- JDBC事务管理
JDBC事务管理 概念回顾: 事务:一个包含多个步骤的业务操作,如果这个业务操作被事务管理,那么这个业务操作的多个步骤要么同时失败,要么同时成功 事务操作: 开启事务 提交事务 回滚事务 使用Conn ...
- JavaWeb基础—JDBC(二)事务与批处理
一.批处理 这里给出PrepareStatement的示例,优点是可以发送预编译的SQL,缺点是SQL语句无法更换,但参数可以更换 批处理:多条语句的处理 mysql默认是关闭的,要打开需要在url后 ...
- JDBC中的事务-Transaction
事务-Transaction 某些情况下我们希望对数据库的某一操作要么整体成功,要么整体失败,经典的例子就是支付宝提现.例如我们发起了支付宝到银行卡的100元提现申请,我们希望的结果是支付宝余额减少1 ...
- MySql中的事务、JDBC事务、事务隔离级别
一.MySql事务 之前在Oracle中已经学习过事务了,这个东西就是这个东西,但是在MySql中用法还是有一点不同,正好再次回顾一下. 先看看MySql中的事务,默认情况下,每执行一条SQL语句,都 ...
- day18(JDBC事务&连接池介绍&DBUtils工具介绍&BaseServlet作用)
day18总结 今日思维导图: 今日内容 事务 连接池 ThreadLocal BaseServlet自定义Servlet父类(只要求会用,不要求会写) DBUtils à commons-dbuti ...
- JTA和JDBC事务
一般情况下,J2EE应用服务器支持JDBC事务.JTA事务.容器管理事务.这里讨论JTA和JDBC事务的区别.这2个是常用的DAO模式事务界定方式.JDBC 事务 JDBC 事务是用 Connecti ...
- Java的JDBC事务详解(转)
事务的特性: 1) 原子性(atomicity):事务是数据库的逻辑工作单位,而且是必须是原子工作单位,对于其数据修改,要么全部执行,要么全部不执行. 2) 一致性(consistency):事务在完 ...
- Java中的事务——JDBC事务和JTA事务
Java中的事务——JDBC事务和JTA事务 转载:http://www.hollischuang.com/archives/1658 之前的事务介绍基本都是数据库层面的事务,本文来介绍一下J2EE中 ...
- CSDN上看到的一篇有关Spring JDBC事务管理的文章(内容比较全) (转)
JDBC事务管理 Spring提供编程式的事务管理(Programmatic transaction manage- ment)与声明式的事务管理(Declarative transaction ma ...
- JDBC事务和JTA事务的区别
转自:JDBC和JTA事务的区别 一.事务概述事务表示一个由一系列的数据库操作组成的不可分割的逻辑单位,其中的操作要么全做要么全都不做.与事务相关的操作主要有:BEGIN TRANSACTION: 开 ...
随机推荐
- java 打包过程及如何使用第三方jar包
地址:http://wenku.baidu.com/view/44a1bbed81c758f5f61f6779.html或者 http://wenku.it168.com/d_000575231.sh ...
- 不引用office动态库导出excel
public class OutExcelReport { /// <summary> /// 把 DataSet 的数据导成 Excel /// </summary> /// ...
- Log4Net日志记录两种方式
简介 log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具. log4net是Ap ...
- c++强制类型转换:dynamic_cast、const_cast 、static_cast、reinterpret_cast
c++强制类型转换:dynamic_cast.const_cast .static_cast.reinterpret_cast 博客分类: C/C++ CC++C#编程数据结构 dynamic_ca ...
- httpd/php/mysql的安装-1
rely: 依赖: relier, reliance , reliable : i don't think he is a reliable man . we must lay stress on ...
- git曲线
git 更新牵涉到三个地方的内容: ?? (pull下来的) 正在编辑的目录, 即工作空间; 本地的仓库; (这个动作叫 : commit) github.com上的服务器即 refs (这个动作 ...
- Entity Framework Fluent API
前言 使用DataAnnotation非常简单,但对于EntityFramework中的特性,就要在实体类中引入EntityFramework程序集,但实体类最好能是保持与架构无关性的POCO类,才能 ...
- 微信智慧KTV上线 不怕周末订不到包厢了
周末邀三五好友唱唱歌是件惬意的事,可订包厢是个烦心事,总是people mountain people sea,而且价格比平时高出不少.现在好了,微信智慧KTV上线了,将有效解决传统KTV收银时间集中 ...
- js打印(控件)及多种方式
非常好用的LODOP打印控件 Lodop打印控件简单使用方法 1.安装. 2.调用LodopFuncs.js文件. 3.增加OBJECT对象 <script language="jav ...
- Android之项目推荐使用的第三方库,有助于快速开发,欢迎各位网友补充
1. 使用上拉更多,下拉刷新:https://github.com/JosephPeng/XListView-Android这个是github上面更为火爆的:https://github.com/ch ...