Java中连接MySQL数据库可以使用JDBC驱动,通过建立Connection、Statement和ResultSet对象进行数据库操作。
Java连接MySQL数据库
1、导入MySQL驱动包
在项目的pom.xml文件中添加以下依赖:
<dependency> <groupId>mysql</groupId> <artifactId>mysqlconnectorjava</artifactId> <version>8.0.26</version> </dependency>
2、加载驱动并建立连接
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public class JdbcDemo { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC"; String user = "root"; String password = "your_password"; try { // 加载驱动 Class.forName("com.mysql.cj.jdbc.Driver"); // 获取连接 Connection connection = DriverManager.getConnection(url, user, password); System.out.println("数据库连接成功!"); connection.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }
执行SQL语句
1、创建Statement对象
import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class JdbcDemo { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC"; String user = "root"; String password = "your_password"; try { // 加载驱动并建立连接 Class.forName("com.mysql.cj.jdbc.Driver"); Connection connection = DriverManager.getConnection(url, user, password); // 创建Statement对象 Statement statement = connection.createStatement(); // 执行SQL语句并获取结果集 ResultSet resultSet = statement.executeQuery("SELECT * FROM users"); // 处理结果集(省略) resultSet.close(); statement.close(); connection.close(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } }
2、执行插入、更新、删除操作的SQL语句(以插入为例)
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.SQLException; import java.sql.Statement; import java.util.Scanner; public class JdbcDemo { public static void main(String[] args) { String url = "jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=UTC"; String user = "root"; String password = "your_password"; try { // 加载驱动并建立连接 Class.forName("com.mysql.cj.jdbc.Driver"); Connection connection = DriverManager.getConnection(url, user, password); // 创建Statement对象(可选,这里只是为了演示) Statement statement = connection.createStatement(); // 执行查询操作(省略) // 创建PreparedStatement对象,用于执行插入、更新、删除操作的SQL语句(以插入为例) PreparedStatement preparedStatement = connection.prepareStatement("INSERT INTO users (username, password) VALUES (?, ?)"); // 设置参数值(注意:使用占位符?代替实际的参数值) preparedStatement.setString(1, "testUser"); // 设置第一个参数的值(用户名) preparedStatement.setString(2, "testPassword"); // 设置第二个参数的值(密码) // 执行插入操作,并获取受影响的行数(即插入成功的记录数) int rowsAffected = preparedStatement.executeUpdate(); // 返回值为1表示插入失败,否则为受影响的行数(即插入成功的记录数) if (rowsAffected > 0) { // 如果插入成功,输出提示信息 System.out.println("插入成功!"); } else { // 如果插入失败,输出错误信息 System.out.println("插入失败!"); }} preparedStatement.close(); // 关闭PreparedStatement对象statement和connection(可选,这里只是为了演示) connection.close(); // 关闭Connection对象 } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } } } ```
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/649785.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复