技术文摘
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 连接的方法各有优缺点,在实际项目中,应根据具体需求选择合适的方式。
- 利用脚本自动清除指定文件夹中丢失链接文件的符号链接
- Python 自动化神器 PyAutoGUI 的使用步骤
- Perl5 代码向 Perl6 迁移的解决方案
- 搞懂词法作用域、动态作用域、回调函数与闭包的一篇文章
- Python 已安装包的查看方法
- Perl6 中的垃圾回收
- Perl 正则表达式强大实例精解
- Python 百万级别数据的大批量写入方法
- Perl5 与 Perl6 使用 Sigils 的差异对比
- Python 中借助 Matplotlib 库打造 3D 图形与交互式图形全面解析
- Perl 中的 uc、lc、ucfirst、lcfirst 大小写转换函数
- Python 爬虫原理及 urllib 基本请求库剖析
- Perl 中符号 ->;、=>; 和 :: 的含义分别是什么?
- Perl 中特殊符号的介绍
- Pycharm 中 Python 对另一文件类或函数的调用