博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jdbc
阅读量:5908 次
发布时间:2019-06-19

本文共 1252 字,大约阅读时间需要 4 分钟。

1 什么是jdbc

java database connectivity

2 常用的接口

2.1 Driver

com.mysql.jdbc.Driver

2.2 Connection

创建到特定数据库的连接,有了连接之后就好办事。

Connection conn = DriverManager.getConnection("jdbc:mysql://host:port/database", "user", "password");

常用方法:

第一,createStatement(),创建向数据库发送sql的Statement对象;

第二,prepareStatement(),创建向数据库发送sql的PrepareStatement对象;

第三,commit(),在该连接上提交事务;

第四,rollback(),在连接上回滚事务。

2.3 Statement

发送简单的sql,可能有sql注入。

2.4 PrepareStatement

发送带参数的sql,可以预防sql注入。

2.5 ResultSet

sql操作的返回结果。

3 jdbc的通用步骤

第一步,注册驱动

Class.forName(“com.MySQL.jdbc.Driver”);

第二步,建立连接

Connection con = DriverManager.getConnection(url, user, password);

第三步, 创建statement

String sql = "insert into user (name, pwd) value (?,?)";

PreparedStatement ps = conn.preparedStatement(sql);

ps.setString(1, "col_value");

ps.setString(2, "123456");

第四步,执行并获取结果

ResultSet rs = ps.executeQuery();

第五步,释放资源,顺序和创建的顺序相反

rs.close();

ps.close();

conn.close()

4 事务和回滚

事务就是一连串的sql操作,要么全部成功,要们全部失败。

当数据库的autocommit设置为false之后,在Statement上执行executeQuery()(或者在PreparedStatement上执行executeUpdate())之后并没有真正的将数据提交到数据库,这个时候,如果直接执行rollback操作,这些executeQuery()操作就会被丢弃。只有在调用commit()并且没有exception发生的情况下,才是真正的执行成功了。我们可以在异常处理中加入rollback操作,对提交失败的事务进行回滚,所以说,事务就是一连串的sql操作,要么全部成功,要么全部失败。

 

转载于:https://www.cnblogs.com/hustdc/p/8453754.html

你可能感兴趣的文章
《从零开始学Swift》学习笔记(Day 40)——析构函数
查看>>
Exchange2003-2010迁移系列之十,Exchange证书攻略
查看>>
extmail集群的邮件负载均衡方案 [lvs dns postfix]
查看>>
更改UIView的背景
查看>>
APUE第15章学习扎记之程序的存储区布局试验
查看>>
ubuntu升级16.04 inter idea 中文输入法无效
查看>>
三目运算判断jsp脚本里面的值
查看>>
sshtunnel在本地访问云服务器mysql
查看>>
小蚂蚁学习APP接口开发(1)—— json方式封装通信接口
查看>>
我的友情链接
查看>>
CDN相关
查看>>
Tomcat的设置4——Tomcat的体系结构与设置基于端口号的虚拟主机
查看>>
我的友情链接
查看>>
ftp协议基础
查看>>
访问共享经常中断
查看>>
人生的交易
查看>>
MySql
查看>>
sql server 下载安装标记
查看>>
js运算符(运算符的结合性)
查看>>
idea 编译级别的设置
查看>>