Java 连接数据库查询
简介
Java 是一种流行的编程语言,广泛应用于企业级应用开发,在实际应用中,Java 程序经常需要与数据库进行交互以存储和检索数据,本文将详细介绍如何使用 Java 连接数据库并执行查询操作。
环境准备
2.1 安装 JDK
确保你已经安装了 Java 开发工具包 (JDK),你可以从 [Oracle 官方网站](https://www.oracle.com/java/technologies/javasedownloads.html) 下载并安装。
2.2 安装数据库
本文将以 MySQL 为例进行讲解,你可以从 [MySQL 官方网站](https://dev.mysql.com/downloads/mysql/) 下载并安装 MySQL。
2.3 安装数据库驱动
为了在 Java 程序中使用 MySQL,你需要下载 MySQL 的 JDBC 驱动程序,你可以从 [MySQL Connector/J 官方页面](https://dev.mysql.com/downloads/connector/j/) 下载。
配置数据库
创建一个新的数据库和表,用于后续的查询操作,创建一个名为testdb 的数据库和一个包含用户信息的表users:
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50),
age INT
);
INSERT INTO users (name, age) VALUES ('Alice', 30), ('Bob', 25), ('Charlie', 35);
编写 Java 代码
4.1 引入必要的库
在你的 Java 项目中,引入 MySQL JDBC 驱动库,如果你使用的是 Maven 项目,可以在pom.xml 文件中添加以下依赖项:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysqlconnectorjava</artifactId>
<version>8.0.29</version>
</dependency>
4.2 编写数据库连接代码
以下是一个简单的 Java 程序,用于连接到 MySQL 数据库并执行查询操作:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.SQLException;
public class DatabaseQueryExample {
// 数据库 URL、用户名和密码
private static final String DB_URL = "jdbc:mysql://localhost:3306/testdb";
private static final String USER = "root";
private static final String PASS = "password";
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
try {
// 注册 JDBC 驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 打开链接
System.out.println("连接数据库...");
conn = DriverManager.getConnection(DB_URL, USER, PASS);
// 执行查询
System.out.println("实例化Statement对象...");
stmt = conn.createStatement();
String sql = "SELECT id, name, age FROM users";
ResultSet rs = stmt.executeQuery(sql);
// 展开结果集数据库
while (rs.next()) {
// 通过字段检索
int id = rs.getInt("id");
String name = rs.getString("name");
int age = rs.getInt("age");
// 输出数据
System.out.print("ID: " + id);
System.out.print(", 名字: " + name);
System.out.print(", 年龄: " + age);
System.out.print("
");
}
// 完成后关闭
rs.close();
stmt.close();
conn.close();
} catch (SQLException se) {
// 处理 JDBC 错误
se.printStackTrace();
} catch (Exception e) {
// 处理 Class.forName 错误
e.printStackTrace();
} finally {
// 关闭资源
try {
if (stmt != null) stmt.close();
} catch (SQLException se2) {} // 什么都不做
try {
if (conn != null) conn.close();
} catch (SQLException se) {
se.printStackTrace();
}
}
System.out.println("Goodbye!");
}
}
运行程序
编译并运行上述 Java 程序,你应该会看到控制台输出如下内容:
连接数据库... 实例化Statement对象... ID: 1, 名字: Alice, 年龄: 30 ID: 2, 名字: Bob, 年龄: 25 ID: 3, 名字: Charlie, 年龄: 35 Goodbye!
常见问题与解答
问题1:如何更改数据库连接的 URL?
解答:数据库连接的 URL 格式为jdbc:mysql://hostname:port/databaseName,要更改数据库连接的 URL,只需修改DB_URL 常量即可,如果你的数据库主机名为myhost,端口为3307,数据库名为mydb,则可以将DB_URL 改为:
private static final String DB_URL = "jdbc:mysql://myhost:3307/mydb";
问题2:如何处理 SQL 异常?
解答:在 Java 中,可以使用trycatch 块来捕获和处理SQLException,你可以在catch 块中记录错误信息或执行其他错误处理逻辑。
} catch (SQLException se) {
// 处理 JDBC 错误
se.printStackTrace();
// 你还可以记录日志或执行其他错误处理逻辑
}
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/90340.html