Java基于JDBC连接数据库及显示数据操作示例
简介
JDBC(Java Database Connectivity)是一组用于操作数据库的接口。它允许Java应用程序与各种类型的关系型数据库进行通信并执行与数据库相关的操作(如查询、更新和删除数据等)。
在Java中,可以通过JDBC API建立Java应用程序与数据库之间的连接。本文将介绍如何使用JDBC API通过Java程序连接数据库、执行基本的数据查询和数据更新操作。
为了方便说明,我们将使用MySQL数据库和MySQL JDBC驱动程序来演示如何使用JDBC连接数据库及显示数据操作。
配置环境及准备工作
在开始编写Java连接数据库的程序之前,您需要做一些准备工作。
- 下载JDBC驱动程序
在使用JDBC连接到数据库之前,您需要先下载与您所使用的数据库相对应的JDBC驱动程序。
比如,如果您使用的是MySQL数据库,则应下载并安装MySQL JDBC驱动程序。可以从以下网址下载MySQL JDBC驱动程序:https://dev.mysql.com/downloads/connector/j/
- 准备数据库
在使用JDBC连接到数据库之前,您需要先准备一个数据库。
在本文的示例中,我们将使用MySQL数据库。可以通过以下步骤在本地创建一个MySQL数据库:
1) 安装MySQL数据库,具体步骤可以参考 https://dev.mysql.com/doc/refman/8.0/en/installing.html
2) 使用以下命令登录MySQL数据库:
mysql -u root -p
3) 创建一个数据库:
create database testdb;
在数据库中,我们将创建一个包含学生信息的表,并将用JDBC连接到这个表来执行一些基本的数据查询和更新操作。
表的列包括:
- 学生ID
- 学生姓名
- 学生年龄
创建表的SQL语句:
CREATE TABLE students (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(255) DEFAULT NULL,
age INT(11) DEFAULT NULL,
PRIMARY KEY (id)
);
使用JDBC连接到MySQL数据库
在配置完成了环境和准备工作之后,下一步是编写Java程序连接到MySQL数据库。
在Java中,可以通过java.sql包中的类和接口来连接数据库,并对数据进行操作。
以下是一个示例Java程序,演示了如何使用JDBC连接到MySQL数据库,并执行一些基本的数据查询操作:
import java.sql.*;
public class JDBCTest {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
try {
Connection conn = DriverManager.getConnection(url,user,password);
System.out.println("成功连接到数据库!");
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from students");
while(rs.next()){
System.out.println(rs.getString("id")+"\t"+rs.getString("name")+"\t"+rs.getString("age"));
}
rs.close();
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
在上面的示例中,首先指定数据库的URL、用户名和密码来建立与数据库的连接:
String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url,user,password);
其中,url是连接数据库的URL,指定了数据库所在的主机、端口号、数据库名、使用的时区,这些信息都是根据具体情况指定的。
接下来,创建一个Statement对象,使用executeQuery()方法执行SQL查询语句,并遍历ResultSet对象,输出查询结果:
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select * from students");
while(rs.next()){
System.out.println(rs.getString("id")+"\t"+rs.getString("name")+"\t"+rs.getString("age"));
}
在查询完数据之后,关闭ResultSet、Statement和Connection对象:
rs.close();
stmt.close();
conn.close();
数据修改操作示例
在本文的示例中,我们将使用MySQL数据库和MySQL JDBC驱动程序来演示如何使用JDBC进行基本的数据查询和数据更新操作。
下面是一个示例程序,演示如何使用JDBC连接到MySQL数据库,并执行一些基本的数据更新操作:
import java.sql.*;
public class JDBCTest {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
try {
Connection conn = DriverManager.getConnection(url,user,password);
System.out.println("成功连接到数据库!");
Statement stmt = conn.createStatement();
// 插入数据
int result = stmt.executeUpdate("insert into students (name, age) values('张三', 20);");
System.out.println("插入了"+result+"条数据!");
// 更新数据
result = stmt.executeUpdate("update students set age=21 where name='张三'");
System.out.println("更新了"+result+"条数据!");
// 删除数据
result = stmt.executeUpdate("delete from students where name='张三'");
System.out.println("删除了"+result+"条数据!");
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
在上面的示例中,首先指定数据库的URL、用户名和密码来建立与数据库的连接:
String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url,user,password);
然后创建一个Statement对象,并使用executeUpdate()方法执行数据更新操作,包括插入、更新和删除数据:
Statement stmt = conn.createStatement();
// 插入数据
int result = stmt.executeUpdate("insert into students (name, age) values('张三', 20);");
System.out.println("插入了"+result+"条数据!");
// 更新数据
result = stmt.executeUpdate("update students set age=21 where name='张三'");
System.out.println("更新了"+result+"条数据!");
// 删除数据
result = stmt.executeUpdate("delete from students where name='张三'");
System.out.println("删除了"+result+"条数据!");
接下来,关闭Statement和Connection对象:
stmt.close();
conn.close();
执行以上代码后,数据库中的数据会被相应地插入、更新和删除。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java基于JDBC连接数据库及显示数据操作示例 - Python技术站