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