JDBC的编程六步:
1、JDBC编程六步:
(1)注册驱动:DriverManager.registerDriver(new com.mysql.jdbc.Driver());
(2)获取连接:Connection conn = DriverManager.getConnection(url, user, password);
(3)获取数据库操作对象:Statement stmt = conn.createStatement();
(4)执行sql语句:int affectLine = stmt.executeUpdate(sql);
(5)处理查询结果集:下面再说。
(6)释放资源:stmt.close(), conn.close();
记住几个关键类:Driver,DriverManager,Connection,Statement。
JDBC中执行的sql语句中不需要写分号。
测试代码:
package jdbc_six_steps;
import java.sql.*;
public class Test01 {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
// 1、注册驱动
Driver driver = new com.mysql.jdbc.Driver(); // 多态
DriverManager.registerDriver(driver);
// 2、获取连接
/*
url:统一资源定位符(网络中某个资源的绝对路径)
https//:www.baidu.com/ 这就是url
url包括哪几部分:协议 + IP + 端口 + 资源名
例如百度的url为:https://182.61.200.7:80/index.html;
https//:通信协议
182.61.200.7:百度服务器的IP地址
80:某个软件的端口号
index.html:资源
mysql的url为:jdbc:mysql://127.0.0.1:3306/study_test;
jdbc:mysql:// 连接mysql的通信协议
127.0.0.1 IP地址
3306 端口号
study_test 具体要连接的数据库实例名称
其中的127.0.0.1也可以写成localhost,都是本机的IP地址
Oracle的url:jdbc:oracle:thin:@localhost:1521:数据库名称;
*/
String url = "jdbc:mysql://127.0.0.1:3306/study_test";
String user = "root";
String password = "666666";
conn = DriverManager.getConnection(url, user, password);
// 3、获取数据库操作对象
stmt = conn.createStatement();
// 4、执行sql语句
String sql = "insert into dept(deptno, dname, loc) values(50, '财务部', '北京')";
/*
executeUpdate(String sql)方法是专门执行DML(insert,delete,update)语句的。
返回结果是这条DML语句影响数据库记录的行数,例如插入一条记录,如果成功,将会影响一行数据。
*/
int affectLine = stmt.executeUpdate(sql);
System.out.println(affectLine == 1 ? "插入成功" : "插入失败");
// 5、处理查询结果集
} catch (SQLException throwables) {
throwables.printStackTrace();
} finally {
// 6、释放资源
// 要按照从小到大的顺序依次关闭资源,并且分别使用try..catch语句
if (stmt != null) {
try {
stmt.close(); // 先关闭数据库操作对象
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
if (conn != null)