准备工作
1、下载并安装MySQL数据库:访问MySQL官网(https://www.mysql.com/)下载对应操作系统的MySQL安装包,并按照提示进行安装。
2、下载并安装Java开发环境:访问Oracle官网(https://www.oracle.com/java/technologies/javasejdk14downloads.html)下载对应操作系统的JDK安装包,并按照提示进行安装。
3、在MySQL中创建一个数据库和表:登录MySQL,创建一个新的数据库,例如testdb
,并在其中创建一个表,例如users
,包含id
、name
和age
三个字段。
添加MySQL JDBC驱动
1、下载MySQL Connector/J(JDBC驱动):访问MySQL官网(https://dev.mysql.com/downloads/connector/j/)下载对应版本的MySQL Connector/J。
2、将下载的JAR文件添加到Java项目的类路径中。
编写Java代码连接MySQL数据库
1、导入相关包:
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement;
2、编写连接MySQL数据库的方法:
public static Connection getConnection() { Connection connection = null; try { // 加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 获取数据库连接字符串,格式为:jdbc:mysql://<host>:<port>/<database>?useSSL=false&serverTimezone=UTC String url = "jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTC"; // 获取用户名和密码 String user = "root"; String password = "your_password"; // 获取数据库连接对象 connection = DriverManager.getConnection(url, user, password); } catch (ClassNotFoundException | SQLException e) { e.printStackTrace(); } return connection; }
3、编写查询数据的方法:
public static void queryData() { Connection connection = null; Statement statement = null; ResultSet resultSet = null; try { connection = getConnection(); statement = connection.createStatement(); // 执行查询语句,获取结果集 resultSet = statement.executeQuery("SELECT * FROM users"); // 处理结果集,例如打印数据 while (resultSet.next()) { int id = resultSet.getInt("id"); String name = resultSet.getString("name"); int age = resultSet.getInt("age"); System.out.println("id: " + id + ", name: " + name + ", age: " + age); } } catch (SQLException e) { e.printStackTrace(); } finally { // 关闭资源 try { if (resultSet != null) { resultSet.close(); } if (statement != null) { statement.close(); } if (connection != null) { connection.close(); } } catch (SQLException e) { e.printStackTrace(); } } }
测试连接和查询数据的方法
在主类中调用queryData()
方法,观察控制台输出的数据是否正确。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/641075.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复