博主打算从0-1讲解下java基础教学,今天教学第十六篇:Java连接和操作MySQL数据库。
我将提供一个简单的示例代码,涵盖数据库连接、查询、插入和更新等操作。
一、下载MySQL驱动包
1.下载地址:MySQL :: Download Connector/J
2.解压文件
二、连接MySQL数据库
在 Java 中连接到 MySQL 数据库需要使用 JDBC(Java Database Connectivity)API。您需要提供数据库的 URL、用户名和密码来建立连接。
示例代码:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;public class DatabaseConnection {private static final String URL = "jdbc:mysql://localhost:3306/mydatabase";private static final String USERNAME = "username";private static final String PASSWORD = "password";public static Connection getConnection() {Connection connection = null;try {// 注册 JDBC 驱动程序Class.forName("com.mysql.cj.jdbc.Driver");// 打开连接connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);} catch (ClassNotFoundException | SQLException e) {e.printStackTrace();}return connection;}
}
三、执行SQL查询
一旦连接成功,您就可以使用 Statement
或 PreparedStatement
对象执行 SQL 查询。
示例代码:
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class QueryExample {public static void main(String[] args) {try {Connection connection = DatabaseConnection.getConnection();Statement statement = connection.createStatement()) String sql = "SELECT * FROM users";ResultSet resultSet = statement.executeQuery(sql);while (resultSet.next()) {int id = resultSet.getInt("id");String username = resultSet.getString("username");String email = resultSet.getString("email");System.out.println("ID: " + id + ", Username: " + username + ", Email: " + email);}} catch (SQLException e) {e.printStackTrace();}}
}
四、执行SQL插入和更新
您也可以使用 Statement
或 PreparedStatement
对象执行 SQL 插入和更新操作。
示例代码:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class InsertUpdateExample {public static void main(String[] args) {try {Connection connection = DatabaseConnection.getConnection();PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO users (username, email) VALUES (?, ?)")) preparedStatement.setString(1, "john");preparedStatement.setString(2, "john@example.com");int rowsInserted = preparedStatement.executeUpdate();if (rowsInserted > 0) {System.out.println("A new user was inserted successfully!");}} catch (SQLException e) {e.printStackTrace();}}
}
五、执行SQL删除
当需要删除数据库中的记录时,可以使用 SQL 中的 DELETE 语句。下面是使用 Java 执行 DELETE 操作的示例代码。
示例代码:
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class DeleteExample {public static void main(String[] args) {try {Connection connection = DatabaseConnection.getConnection();PreparedStatement preparedStatement = connection.prepareStatement("DELETE FROM users WHERE id = ?")) // 设置要删除的记录的 IDint userIdToDelete = 1;preparedStatement.setInt(1, userIdToDelete);// 执行删除操作int rowsDeleted = preparedStatement.executeUpdate();if (rowsDeleted > 0) {System.out.println("User with ID " + userIdToDelete + " has been deleted successfully!");} else {System.out.println("No user found with ID " + userIdToDelete);}} catch (SQLException e) {e.printStackTrace();}}
}
六、注意事项
- 在使用完数据库连接后,务必关闭连接,以释放资源。
- 使用
try-with-resources
来确保资源被正确关闭,从而避免资源泄漏。 - 在生产环境中,避免在代码中硬编码数据库连接信息,可以使用配置文件或者环境变量来管理敏感信息。
这些是使用 Java 连接和操作 MySQL 数据库的基本步骤和示例代码。您可以根据自己的需求进一步扩展和优化这些代码。