一、概念:
JDBC(Java Data Base Connectivity, Java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它有一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序。通俗来讲,JDBC就是java为各种数据库提供的一个连接接口,也就是java与数据库之间进行连同的桥梁。
二、连接步骤:
JDBC的链接过程:
* ① 导入数据库厂商提供的驱动jar包(不同的数据库有不同的驱动jar包,这里根据实际要求来,我这里是以mysql数据库为例)
导入过程请看此文:https://blog.csdn.net/weixin_42193674/article/details/105018136
* ② 注册驱动--将导入的jar包交给java使用
* ③ 建立java与数据库的连接通道
* ④ 创建业务sql
* ⑤ 创建一个传送sql语句的对象,用于将java种的sql语句传入数据库
* ⑥ 执行sql语句
* ⑦ 关闭资源
三、完整代码:
package jdbcStudy;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.List;
import org.junit.Test;
import com.mysql.jdbc.Driver;
public class jdbcStudy {
/**
* JDBC的链接过程:
* ① 导入数据库厂商提供的驱动jar包
* ② 注册驱动--将导入的jar包交给java使用
* ③ 建立java与数据库的连接通道
* ④ 创建业务sql
* ⑤ 创建一个传送sql语句的对象,用于将java种的sql语句传入数据库
* ⑥ 执行sql语句 ⑦ 关闭资源
*/
@Test
public void test() {
Connection conn = null;
Statement stmt = null;
try {
/**
* 此步骤最好设置为全局变量!
* localhost:数据库服务器的IP地址,这里连接的是本地数据库服务器,也可以是127.0.0.1
* url路径为:jdbc:mysql://数据库服务器IP地址:端口号/数据库名称
*/
String url = "jdbc:mysql://localhost:3306/1909-localhost";
String user = "root";
String password = "x5";
/**
* ②注册驱动,只需要Driver类加载static即可,这里有三种方式去加载
* 第二种
* new Driver();
* 第三种,这里的Driver.class返回的是一个class类
* Class c =Driver.class;
* 此两种方式面试可能会问起
*
*/
// 第一种方式,使用的是java.sql中的Driver驱动
Class.forName("com.mysql.jdbc.Driver");
// ③建立连接:这里需要三个参数,第一个为数据库ip地址,第二个为用户名,第三个为密码,调用的是java.sql中的Connection
conn = DriverManager.getConnection(url, user, password);
// ④创建业务sql语句
String sql = "insert into star(StarId,StarName) value(13,\"仁艳座\");";
// ⑤创建传送sql语句的对象,注意此处应该使用刚刚创建的连接对象去创建该对象,调用的是java.sql中的Statement
stmt = conn.createStatement();
// ⑥通过stmt对象执行sql语句,得到执行sql语句后的结果返回值,在进行相关的业务逻辑处理
int i = stmt.executeUpdate(sql);
if (i > 0) {
System.out.println("数据写入成功!");
} else {
System.out.println("数据写入失败!");
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
// ⑦关闭资源,原则:正向创建,逆向关闭
try {
// 这里一定要判断一下stmt是否是null,如果是,则stmt无需关闭资源
if (null != stmt) {
stmt.close();
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if (null != conn) {
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
四、运行截图:
代码运行前数据库中star表中的数据:
运行java代码:
再次查询star表中的数据:
表明:代码运行正确,数据插入成功!后续将继续更新jdbc的简单运用。。。