# IDEA怎么使用JDBC安装配置jar包连接MySQL数据库 ## 一、前言 在Java开发中,通过JDBC连接MySQL数据库是最基础也是最重要的操作之一。本文将以IntelliJ IDEA作为开发工具,详细介绍如何配置JDBC驱动、建立数据库连接并执行简单操作。文章包含以下核心内容: 1. 环境准备与工具安装 2. MySQL驱动jar包的获取与配置 3. 在IDEA中创建JDBC连接项目 4. 编写并测试数据库连接代码 5. 常见问题解决方案 ## 二、环境准备 ### 1. 所需工具清单 - IntelliJ IDEA(建议2020.3+版本) - MySQL数据库(5.7或8.0版本) - MySQL Connector/J驱动(与MySQL版本匹配) - Java开发环境(JDK 1.8+) ### 2. MySQL安装验证 确保MySQL服务已启动并可通过命令行连接: ```bash mysql -u root -p
官方下载地址: https://dev.mysql.com/downloads/connector/j/
选择对应版本(推荐8.0.x)的Platform Independent版本下载ZIP包。
方法一:通过Maven导入(推荐)
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.28</version> </dependency>
方法二:手动添加jar包 1. 解压下载的ZIP文件 2. 在IDEA项目中: - 右键项目 -> Open Module Settings - 选择Libraries -> “+” -> Java - 选择解压后的jar文件(如mysql-connector-java-8.0.28.jar)
package com.example.jdbc; import java.sql.*; public class MySQLConnectionTest { private static final String URL = "jdbc:mysql://localhost:3306/test_db"; private static final String USER = "root"; private static final String PASSWORD = "yourpassword"; public static void main(String[] args) { Connection connection = null; try { // 1. 加载驱动(MySQL 8.0+可省略) Class.forName("com.mysql.cj.jdbc.Driver"); // 2. 建立连接 connection = DriverManager.getConnection(URL, USER, PASSWORD); // 3. 测试查询 Statement stmt = connection.createStatement(); ResultSet rs = stmt.executeQuery("SELECT 1"); while(rs.next()) { System.out.println("连接测试成功,返回结果:" + rs.getInt(1)); } } catch (Exception e) { e.printStackTrace(); } finally { // 4. 关闭连接 try { if(connection != null) connection.close(); } catch (SQLException e) { e.printStackTrace(); } } } }
MySQL 8.0+的标准格式:
jdbc:mysql://[host][:port]/[database][?参数1=值1&参数2=值2...]
常用参数: - useSSL=false
(开发环境禁用SSL) - serverTimezone=UTC
(解决时区问题) - characterEncoding=utf8
(设置编码)
示例:
String URL = "jdbc:mysql://localhost:3306/test_db?useSSL=false&serverTimezone=UTC";
推荐使用HikariCP连接池:
HikariConfig config = new HikariConfig(); config.setJdbcUrl(URL); config.setUsername(USER); config.setPassword(PASSWORD); config.addDataSourceProperty("cachePrepStmts", "true"); config.addDataSourceProperty("prepStmtCacheSize", "250"); HikariDataSource ds = new HikariDataSource(config); Connection connection = ds.getConnection();
public static void queryData(Connection conn) throws SQLException { String sql = "SELECT id, name FROM users WHERE age > ?"; PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setInt(1, 18); ResultSet rs = pstmt.executeQuery(); while(rs.next()) { System.out.println(rs.getInt("id") + ": " + rs.getString("name")); } }
public static int insertData(Connection conn, String name, int age) throws SQLException { String sql = "INSERT INTO users(name, age) VALUES(?, ?)"; PreparedStatement pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS); pstmt.setString(1, name); pstmt.setInt(2, age); int affectedRows = pstmt.executeUpdate(); if(affectedRows > 0) { ResultSet rs = pstmt.getGeneratedKeys(); if(rs.next()) { return rs.getInt(1); } } return -1; }
错误信息:
The server time zone value 'xxx' is unrecognized...
解决方案: 在连接URL中添加:
?serverTimezone=UTC
错误信息:
Establishing SSL connection without server's identity verification is not recommended...
解决方案: 在连接URL中添加:
?useSSL=false
错误信息:
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
解决方案: - 检查jar包是否正确导入 - MySQL 8.0+使用新驱动类:
Class.forName("com.mysql.cj.jdbc.Driver");
资源管理:使用try-with-resources自动关闭连接
try (Connection conn = DriverManager.getConnection(URL); PreparedStatement pstmt = conn.prepareStatement(sql)) { // 操作代码 }
安全建议:
性能优化:
本文详细演示了在IntelliJ IDEA中使用JDBC连接MySQL数据库的全流程。关键步骤包括:
掌握这些基础操作后,可以进一步学习: - MyBatis等ORM框架 - Spring Data JPA - 数据库连接池优化
完整的示例代码已托管至GitHub:示例项目链接
”`
注:实际使用时请将: 1. yourpassword
替换为实际数据库密码 2. test_db
替换为实际数据库名 3. 示例项目链接替换为实际仓库地址 4. MySQL驱动版本号根据实际情况调整
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。