技术文摘
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 怎样把抓取的文本与图片合并保存成 Word 文档
- Go项目开发中合适目录结构的选择方法
- WeiPHP 框架下微信订阅号留言板实时更新功能的实现方法
- Golang Service库开机自启后日志无法打印:日志文件为何无法写入
- Go匿名函数闭包行为剖析:为何i变量总为4
- 用jQuery从PHP获取MySQL数据并显示为列表的方法
- PHP获取MySQL数据库名单并显示到前端的方法
- C语言循环的简单指南及示例
- Go项目开发结构探讨:依项目复杂度灵活制定目录结构方法
- Go中使用i++递增变量致for循环无法运行原因
- 前端与企业开发中PHP IDE的选择方法
- Gin路由状态码不一致问题:BindJSON失败返400,ShouldBind系列方法却不返原因何在
- Go安装Gin后出现Default未识别错误原因
- Python 3里用pycurl判断下载完成并启动下一个下载的方法
- 微信订阅号实现网站功能,数据库操作选SQL语句还是接口调用