在JAVA中运用数据库连接,实现对数据库信息进行增删改查操作等相关知识完成代码的编写,带有详细过程
时间: 2024-02-11 18:04:04 浏览: 70
好的,以下是一份简单的 Java 数据库连接代码,以 MySQL 数据库为例:
1. 导入 JDBC 驱动包
在项目中添加 MySQL 的 JDBC 驱动包,可以在 MySQL 官网下载,或者使用 Maven 管理工具添加依赖。
2. 加载驱动程序
在代码中,使用 Class.forName() 方法加载驱动程序,代码如下:
```java
Class.forName("com.mysql.cj.jdbc.Driver");
```
3. 创建数据库连接
在加载驱动程序后,可以通过 DriverManager.getConnection() 方法创建数据库连接,代码如下:
```java
String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC&characterEncoding=utf8";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
```
其中,url 参数指定数据库连接地址,user 和 password 参数指定连接数据库的用户名和密码。
4. 创建 Statement 对象
通过 Connection 对象的 createStatement() 方法创建 Statement 对象,用于执行 SQL 语句,代码如下:
```java
Statement stmt = conn.createStatement();
```
5. 执行 SQL 语句
通过 Statement 对象的 executeUpdate() 方法执行 SQL 语句,用于增删改操作,代码如下:
```java
String sql = "INSERT INTO user (name, age) VALUES ('Tom', 18)";
int rows = stmt.executeUpdate(sql);
```
其中,sql 参数为 SQL 语句字符串,rows 变量用于存储执行 SQL 语句后受影响的行数。
通过 Statement 对象的 executeQuery() 方法执行 SQL 语句,用于查询操作,代码如下:
```java
String sql = "SELECT * FROM user";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println("name: " + name + ", age: " + age);
}
```
其中,rs 变量为查询结果集合,通过 rs.next() 方法获取每一行数据,getString() 和 getInt() 方法可以获取指定列的值。
6. 关闭资源
在使用完数据库连接后,需要关闭 Statement 对象和 Connection 对象,代码如下:
```java
rs.close();
stmt.close();
conn.close();
```
完整代码如下:
```java
import java.sql.*;
public class JdbcDemo {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC&characterEncoding=utf8";
String user = "root";
String password = "root";
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
conn = DriverManager.getConnection(url, user, password);
stmt = conn.createStatement();
String sql = "INSERT INTO user (name, age) VALUES ('Tom', 18)";
int rows = stmt.executeUpdate(sql);
System.out.println("insert " + rows + " rows");
sql = "SELECT * FROM user";
rs = stmt.executeQuery(sql);
while (rs.next()) {
String name = rs.getString("name");
int age = rs.getInt("age");
System.out.println("name: " + name + ", age: " + age);
}
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
try {
if (rs != null) rs.close();
if (stmt != null) stmt.close();
if (conn != null) conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
```
希望这份代码能够帮助到你。
阅读全文