JDBC编程六部曲
今天初学jdbc,明白了大致的编程流程,在此总结一下:
JDBC编程可以分为六步——六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
准备工作:
下载包mysql-java-api.jar
新建一个包,创建一个新类,
build path导入该包。
package SixSteps;
/**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 { public static void main(String[] args) {
try { }catch (Exception e) {
e.printStackTrace();
} } }
第一步:注册驱动
package SixSteps; import java.sql.Driver;
import java.sql.DriverManager; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 { public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 }catch (Exception e) {
e.printStackTrace();
} } }
第二步:获取数据库连接
package SixSteps; import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 {
private static Connection connection = null; public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 //2.获取数据库连接
33 String url = "jdbc:mysql://localhost/world?Encoding=utf-8&autoReconnect=true&useSSL=false&testOnBorrow=true&validationQuery=select";
34 // url: 数据库地址 jdbc:mysql://连接主机IP:端口号//数据库名字
35 String user = "root";
36 String password = "your passworld";
37 connection =DriverManager.getConnection(url, user, password) }catch (Exception e) {
e.printStackTrace();
} } }
3.获取数据库操作对象。
package SixSteps; import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.Statement; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 {
private static Connection connection = null; public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 //2.获取数据库连接
String url = "jdbc:mysql://localhost/world?Encoding=utf-8&autoReconnect=true&useSSL=false&testOnBorrow=true&validationQuery=select";
String user = "root";
String password = "your passworld";
connection =DriverManager.getConnection(url, user, password); //3.获取数据库操作对象。
40 Statement statement = connection.createStatement(); }catch (Exception e) {
e.printStackTrace();
} } }
第四步:执行SQL语句
package SixSteps; import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 {
private static Connection connection = null;
private static ResultSet resultSet = null; public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 //2.获取数据库连接
String url = "jdbc:mysql://localhost/world?Encoding=utf-8&autoReconnect=true&useSSL=false&testOnBorrow=true&validationQuery=select";
String user = "root";
String password = "your passworld";
connection =DriverManager.getConnection(url, user, password); //3.获取数据库操作对象。
Statement statement = connection.createStatement(); //4:执行SQL语句
46 String mysql = "select Language, isOfficial from countrylanguage";
47 resultSet = statement.executeQuery(mysql);
48 }catch (Exception e) {
e.printStackTrace();
} } }
第五步:处理查询结果
package SixSteps; import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 {
private static Connection connection = null;
private static ResultSet resultSet = null; public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 //2.获取数据库连接
String url = "jdbc:mysql://localhost/world?Encoding=utf-8&autoReconnect=true&useSSL=false&testOnBorrow=true&validationQuery=select";
String user = "root";
String password = "your passworld";
connection =DriverManager.getConnection(url, user, password); //3.获取数据库操作对象。
Statement statement = connection.createStatement(); //4:执行SQL语句
String mysql = "select Language, isOfficial from countrylanguage";
resultSet = statement.executeQuery(mysql); //5.处理查询结果
while (resultSet.next()) {
System.out.println(resultSet.getString("Language")+"\t"+resultSet.getString("isOfficial"));
} }catch (Exception e) {
e.printStackTrace();
} } }
第六步:关闭资源
package SixSteps; import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; /**
* JDBC编程六部曲:
* 第一步:注册驱动。
* 1.1 获取驱动对象
* 1.2 注册驱动
* 第二步:获取数据库连接
* 第三步:获取数据库操作对象
* 第四步:执行SQL语句
* 第五步:处理查询结果
* 第六步:关闭资源
*/
public class JDBCTest02 {
private static Connection connection = null;
private static ResultSet resultSet = null; public static void main(String[] args) {
try {
//1.注册驱动
// 1.1获取驱动对象
Driver driver = new com.mysql.cj.jdbc.Driver();
//这里driver属于java.sql.Driver,后面是属于JDBC类。 // 1.2注册
DriverManager.registerDriver(driver);
//DriverManager的静态方法 //2.获取数据库连接
String url = "jdbc:mysql://localhost/world?Encoding=utf-8&autoReconnect=true&useSSL=false&testOnBorrow=true&validationQuery=select";
String user = "root";
String password = "your passworld";
connection =DriverManager.getConnection(url, user, password); //3.获取数据库操作对象。
Statement statement = connection.createStatement(); //4:执行SQL语句
String mysql = "select Language, isOfficial from countrylanguage";
resultSet = statement.executeQuery(mysql); //5.处理查询结果
while (resultSet.next()) {
System.out.println(resultSet.getString("Language")+"\t"+resultSet.getString("isOfficial"));
} }catch (Exception e) {
e.printStackTrace();
}finally {
//6.关闭资源
if (resultSet!=null) {
try {
resultSet.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
} } }
特别注意:
这个import的使用
因为JDBC和MySQL有很多的类是相同的,由于是MySQL要实现jdbc的接口,故一定是MySQL类 = JDBC类
包不要导错了,否则比较难以发现。
JDBC编程六部曲的更多相关文章
- SSH六部曲
<strong> 一共有6步(文章底部附有源码下载地址,刚学完ssh的可以借鉴)</strong> 1 写一个Hibernate应用,完成用户的增加 1) User实体 2)U ...
- 1.JDBC编程六步走以及实现案例
1.注册驱动:通知Java程序我们要连接的是哪个品牌的数据库 2.获取数据库连接:Java进程和Mysql进程之间的通道开启了 3.获取数据库操作对象:这个对象是用来执行sql语句的 4.执行SQL语 ...
- MySQL之JDBC编程增删改查
MySQL之JDBC 一.JDBC是什么 Java DatabaseConnectivity (java语言连接数据库) 二.JDBC的本质 JDBC是SUN公司制定的一套接口(interface). ...
- 数据库 MySQL Jdbc JDBC的六个固定步骤
*0 案例: a)在JavaScript中使用正则表达式,在JS中正则表达式的定界符是:// var regexp = /^[0-9]+$/; if(regexp.test(nu ...
- 跟着刚哥学习Spring框架--JDBC(六)
Spring的JDBC框架 Spring JDBC提供了一套JDBC抽象框架,用于简化JDBC开发. Spring主要提供JDBC模板方式.关系数据库对象化方式.SimpleJdbc方式.事务管理来简 ...
- 第十三章.MySQL数据库与JDBC编程(下)
JDBC的典型用法: JDBC4.2常用接口和类简介: DriverManager:用于管理JDBC驱动的服务类,程序中使用该类的主要功能是获取Connection对象,该类包含如下方法: publi ...
- JDBC编程理论知识(1)
1.SUN公司为统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC 2.JDBC全称为:Java Data Base Connectivity(java数据库连接),它主要由接口组 ...
- Java基础教程:JDBC编程
Java基础教程:JDBC编程 1.什么是JDBC JDBC 指 Java 数据库连接,是一种标准Java应用编程接口( JAVA API),用来连接 Java 编程语言和广泛的数据库. JDBC A ...
- 小菜鸟之java JDBC编程
JDBC技术 百度简介 : JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一 ...
随机推荐
- SSM项目使用GoEasy 获取客户端上下线实时状态变化及在线客户列表
一.背景 上篇SSM项目使用GoEasy 实现web消息推送服务是GoEasy的一个用途,今天我们来看GoEasy的第二个用途:订阅客户端上下线实时状态变化.获取当前在线客户数量和在线客户列表.截止我 ...
- String,StringBuffer与StringBuilder的区别?? 缓存
转: String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主 ...
- Java8 list转map 坑
Map<String , SonCargosForm> orderCargosMap = sonTemporaryForm.getOrderCargosList().stream() .c ...
- gulp 入门使用
gulp 入门使用 使用场景 相信大家在传统的开发模式下 都是 html + css + js 然后静态文件不经过任何处理 部署到服务器,这样会有很多漏洞例如: 1.在网站上查看F12 就可以看到 ...
- call(),apply(),bind()区别?
每个函数都包含两个非继承而来的方法,apply()和call(),这两方法的用途都是在特定的作用域中调用函数,实际上等于设置函数数体内的this对象的值. apply()和call()第一个参数都一样 ...
- Codeforces Round #523 (Div. 2) D. TV Shows 模拟(多重集 先把所有区间加入多重集合)+贪心+二分
题意:给出n个电视节目的起始和结束时间 并且租一台电视需要x +y*(b-a) [a,b]为时段 问完整看完电视节目的最小花费是多少 思路:贪心的思想 情况1 如果新租一台电视的花费<=在空 ...
- Luogu4495 [HAOI2018] 奇怪的背包 【扩展欧几里得算法】
题目分析: 首先打个暴力求一下$10^9$以内因子最多的数的因子个数,发现只有$1344$个. 由于有$ax+by=k*(a,b)$和2017年noip的结论,所以我们可以发现对于任意多个数$a_1, ...
- BZOJ 2730 矿场搭建
割点 割点以外的点坍塌不影响其他人逃生,因为假设我们任取两个个非割点s建立救援站,非割点的任意点坍塌,我们都可以从割点走到一个救援出口. 所以我们只考虑割点坍塌的情况. 我们可以先找出图中所有的割点. ...
- django restframework Serializer field
SerializerMethodField 这是一个只读字段.它通过调用它所连接的序列化类的方法来获得它的值.它可用于将任何类型的数据添加到对象的序列化表示中. 签名: SerializerMetho ...
- Vue 报错[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders
场景:父组件向子组件传递数据,子组件去试图改变父组件数据的时候. 解决:子组件通过事件向父组件传递信息,让父组件来完成数据的更改. 比如:我的父组件是普通页面,子组件是弹窗的登录界面,父组件传递的数据 ...