在进行这些操作之前,我们需要先了解JDBC入门,JDBC是一种用于执行SQL语句的JavaAPL,可以为多种关系数据库提供统一访问。
一,主要作用
1.连接数据库
允许Java程序与各种不同的数据库建立连接。无论使用的是MySQL,Oracle,SQLServer等数据库,都可以通过JDBC提供的接口和驱动来实现连接。
2.执行SQL语句
可以执行各种SQL语句,包括查询(SELECT),插入(INSERT),更新(UPDATE)和删除(DELECT)等操作。例如,我们可以使用JDBC执行一个查询语句来获取数据库中的数据,或者执行一个插入语句向数据库中添加新的数据记录。
JDBC要完成五步才能实现对数据的读取操作
首先我们需要建立一个数据库,创建employee员工表
然后我们进入JDBC的开发操作,将上表的数据提取出来
实现五步操作
1.加载并注册JDBC驱动
2.创建数据库连接
3.创建Statement对象
4.遍历查询结果
5.关闭连接,释放资源
首先从官网下载mysql驱动,将下载好的驱动复制到lib目录中
然后引用这个驱动程序
当前的驱动已被我们增加到这个工程中。
然后进行第一步:加载并注册JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
Class.forName :用于加载指定的类
第二步:创建数据库连接
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/imooc?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/shanghai", "root", "root");
返回值为Connection对象,代表java应用程序和数据库之间的通信桥梁。
第三步:创建Statement对象
Statement stmt =conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from employee");
第四步:遍历查询结果
while (rs.next()) {
Integer eno = rs.getInt(1);
String ename = rs.getString("ename");
Float salary = rs.getFloat("salary");
String dname = rs.getString("dname");
System.out.println(dname + "-" + eno + "-" + ename + "-" + salary);
}
第五步:关闭连接,释放资源
if(conn !=null && conn.isClosed() == false){
//5.关闭连接,释放资源
conn.close();
}
标准JDBC操作过程:
package com.im.jdbc.sample;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class StandardJDBCSample {
public static void main(String[] args) {
Connection conn = null;
try {
//1.加载并注册JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.创建数据库连接
DriverManager.getConnection("jdbc:mysql://localhost:3306/imooc?useSSL=false&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/shanghai", "root", "root");
//3.创建Statement对象
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select*from employee"); //结果集 包含sql语句返回的数据
//4.遍历查询结果
while (rs.next()) {
Integer eno = rs.getInt(1);//将当前行第一列的数据作为整型进行获取
String ename = rs.getString("ename");
Float salary = rs.getFloat("salary");
String dname = rs.getString("dname");
System.out.println(dname + "-" + eno + "-" + ename + "-" + salary);
}
}catch(Exception e) {
e.printStackTrace();
}finally {
try {
if (conn != null && conn.isClosed() == false) {
//5.关闭连接,释放资源
conn.close();
}
}catch (Exception ex){
ex.printStackTrace();
}
}
}
}
结果显示: