技术文摘
Java 获取 MySQL 连接的三种方法(附示例图)
2025-01-15 03:49:39 小编
Java 获取 MySQL 连接的三种方法(附示例图)
在 Java 开发中,与 MySQL 数据库建立连接是一项基础且重要的操作。本文将详细介绍三种常见的获取 MySQL 连接的方法,并附上示例图以便理解。
一、使用 JDBC 原生方式
JDBC(Java Database Connectivity)是 Java 访问数据库的标准 API。使用这种方式,首先要导入 MySQL 的 JDBC 驱动包。在代码中,需加载驱动类,然后通过 DriverManager.getConnection() 方法获取连接。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class JDBCExample {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/yourdatabase";
String username = "yourusername";
String password = "yourpassword";
Connection connection = null;
try {
Class.forName("com.mysql.cj.jdbc.Driver");
connection = DriverManager.getConnection(url, username, password);
System.out.println("连接成功");
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
if (connection!= null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
示例图:[展示 JDBC 原生方式连接过程的流程图,从加载驱动到获取连接再到关闭连接]
二、使用数据库连接池
数据库连接池能预先创建一定数量的连接对象,当有请求时直接从池中获取连接,使用后再放回池中,从而提高连接的复用率和性能。常见的连接池有 HikariCP、C3P0 等。以 HikariCP 为例:
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
import java.sql.Connection;
import java.sql.SQLException;
public class HikariCPExample {
public static void main(String[] args) {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/yourdatabase");
config.setUsername("yourusername");
config.setPassword("yourpassword");
HikariDataSource dataSource = new HikariDataSource(config);
Connection connection = null;
try {
connection = dataSource.getConnection();
System.out.println("连接成功");
} catch (SQLException e) {
e.printStackTrace();
} finally {
if (connection!= null) {
try {
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}
示例图:[展示 HikariCP 连接池工作原理的示意图,包括连接池的初始化、获取连接和归还连接的过程]
三、使用 Spring JDBC
Spring 框架提供了方便的 JDBC 支持。首先要在项目中引入 Spring JDBC 相关的依赖。通过配置数据源和 JdbcTemplate,可以轻松获取连接并进行数据库操作。
<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/yourdatabase"/>
<property name="username" value="yourusername"/>
<property name="password" value="yourpassword"/>
</bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg ref="dataSource"/>
</bean>
示例图:[展示 Spring JDBC 架构中数据源、JdbcTemplate 和数据库之间关系的架构图]
这三种获取 MySQL 连接的方法各有优缺点,在实际项目中,应根据具体需求选择合适的方式。
- 程序员免费电子书下载网站,你知晓几个?
- TensorFlow 2.0 我们期待的变化还有哪些?
- 这份攻略助你掌控反复无常的 GAN
- Python 小白必知的 8 个常用内置函数
- 2018 年 Python 官方报告:Python 趋势一览
- 事务系统实现模式简单与否?这些差异不容忽视!
- GitHub 上 Nginx 性能优化整理连续多日占据趋势榜,获 5k+ star
- Vue 再添新选择!vue.ant.design 悄然上线
- 美图全面容器化的三年坎坷之路
- 大数据剖析 Java 未来五年发展走向
- 90 后中年危机提前降临:代码未写够已入中年且危机重重
- LeCun:Python 应退场 深度学习新语言需登场
- 马蜂窝消息总线:业务导向的消息服务设计
- 数据驱动下的酒店对账自动化测试系统
- 100 个最受欢迎的 Java 库