一、什么是JDBC?
学习完数据库Mysql的先关知识,我们能使用一些sql语句对数据的增删改查,但是如何把数据库中的数据跟Java代码相结合,也就是如何用Java语言获取数据库中的数据,转化为Java对象。这个时候我们就需要用到JDBC编程技术。
JDBC, 全称为Java DataBase Connectivity standard, 它是一个面向对象的应用程序接口(API), 通过它可访问各类关系数据库。JDBC也是java核心类库的一部分
JDBC的最大特点是它独立于具体的关系数据库。与ODBC (Open Database Connectivity)类似, JDBC API 中定义了一些Java类分别用来表示与数据库的连接(connections), SQL语句(SQL statements), 结果集(result sets)以及其它的数据库对象, 使得Java程序能方便地与数据库交互并处理所得的结果。使用JDBC, 所有Java程序(包括Java applications , applets和servlet)都能通过SQL语句或存储在数据库中的过程(stored procedures)来存取数据库。
要通过JDBC来存取某一特定的数据库,必须有相应的JDBC driver,它往往是由生产数据库的厂家提供,是连接JDBC API与具体数据库之间的桥梁。
二、JDBC编程步骤
首先我们需要在数据库中创建一张表,使用我们JDBC技术对这张表中的数据进行存取。
上图中,我们看到在我们的Mysql数据库中在 new 这个库下有两张表,我们使用student这张表。这张表中存储了一条数据,我们现在就使用JDBC编程拿到这条数据。
在编程之前我们还需要引入数据库驱动的jar
由于我们是maven工程,所以我们直接引入依赖:
<!--MYSQL数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.39</version>
</dependency>
步骤:
1.加载数据库的驱动 :“com.mysql.jdbc.Driver”
2.获取数据库的连接:“jdbc:mysql://localhost:3306/new?useSSL=false”
3.创建Connection : name为数据库的User,一般为root;password为你安装Mysql时候创建的密码
4.创建Statment对象
5.执行相关的sql : select * from student 拿到这张表中的数据
6.对返回结果处理
7.关闭操作 : statement.close();
代码展示:
import java.sql.*;
public class JDBCDemo {
public static void main (String[] args) {
//1.加载数据库的驱动 mysql->com.mysql.jdbc.Driver
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
/**
* 2.获取数据库的连接
* name:
* password
*/
String url = "jdbc:mysql://localhost:3306/new?useSSL=false";
try {
Connection connection = DriverManager.getConnection(url, "root", "123");
//3.创建Statment对象
Statement statement = connection.createStatement();
//4.执行相关的sql
String sql = "select * from student";
ResultSet resultSet = statement.executeQuery(sql);
//5.对返回结果处理
while (resultSet.next()){
String sid = resultSet.getString("SID");
String sname = resultSet.getString("SName");
System.out.println(sid+":"+sname);
}
//6.关闭操作
resultSet.close();
statement.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
运行结果: