javaweb中mysql数据库连接步骤方法及其实例
发布时间 - 2026-01-11 00:41:40 点击率:次一、直接连接,不封装到工具类中,主要步骤:

先导包:mysql-connector-java-5.0.8-bin.jar(点击跳转到下载界面),放在WebRoot/WEB-INF/lib/下
1.加载驱动//com.MySQL.jdbc.Driver
2.获取连接 Connection对象
3.获取用于向数据库发送SQL的Statement对象
4.执行sql,获取数据,解析数据
5.关闭连接,释放资源
/*协议:子协议://主机:端口/数据库名*/
Stringurl="jdbc:mysql://localhost:3306/jdbctest";
//mysql数据库的用户名与密码,安装时自己设置,一般默认为root
Stringuser="root";
Stringpassword="root";
Connectionconnection=null;
Statementstatement=null;
ResultSetresultSet=null;
try{
//1.加载驱动//com.mysql.jdbc.Driver
/*
*DriverManager.registerDriver(new
*Driver());用这种方法会加载两次驱动,也就是说会创建两个drive对象
*/
Class.forName("com.mysql.jdbc.Driver");
//2.获取连接
connection=DriverManager.getConnection(url,user,password);
//3.获取用于向数据库发送SQL的Statement对象
statement=connection.createStatement();
//4.执行sql,获取数据
resultSet=statement.executeQuery("SELECT*FROMusers;");
//解析数据
while(resultSet.next()){
intid=resultSet.getInt("id");
Stringname=resultSet.getString("name");
Stringpsd=resultSet.getString("password");
Stringemail=resultSet.getString("email");
Stringbirthday=resultSet.getString("birthday");
System.out.println(id+""+name+""+psd+""+email
+""+birthday);
}
}catch(ClassNotFoundExceptione){
e.printStackTrace();
}catch(SQLExceptione){
e.printStackTrace();
}finally{
//5.关闭连接,释放资源
if(resultSet!=null){
try{
resultSet.close();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
resultSet=null;
}
if(statement!=null){
try{
statement.close();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
statement=null;
}
if(connection!=null){
try{
connection.close();
}catch(SQLExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
connection=null;
}
/* 协议:子协议://主机:端口/数据库名 */
String url = "jdbc:mysql://localhost:3306/jdbctest";
// mysql数据库的用户名与密码,安装时自己设置,一般默认为root
String user = "root";
String password = "root";
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
try {
// 1.加载驱动//com.mysql.jdbc.Driver
/*
* DriverManager.registerDriver(new
* Driver());用这种方法会加载两次驱动,也就是说会创建两个drive对象
*/
Class.forName("com.mysql.jdbc.Driver");
// 2.获取连接
connection = DriverManager.getConnection(url, user, password);
// 3.获取用于向数据库发送SQL的Statement对象
statement = connection.createStatement();
// 4.执行sql,获取数据
resultSet = statement.executeQuery("SELECT * FROM users;");
// 解析数据
while (resultSet.next()) {
int id = resultSet.getInt("id");
String name = resultSet.getString("name");
String psd = resultSet.getString("password");
String email = resultSet.getString("email");
String birthday = resultSet.getString("birthday");
System.out.println(id + " " + name + " " + psd + " " + email
+ " " + birthday);
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
//5.关闭连接,释放资源
if (resultSet != null) {
try {
resultSet.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
resultSet = null;
}
if (statement != null) {
try {
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
statement = null;
}
if (connection != null) {
try {
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
connection = null;
}
}
二、将数据库连接封装成一个工具类
这样做的好处是,在实际开发中,就能做到,改一处即可修改全局。
1.建一个名为db.properties的配置文件,放于src/
url=jdbc:mysql://localhost:3306/jdbctest username=root password=root driver=com.mysql.jdbc.Driver
2.工具类:
importjava.io.IOException;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.Properties;
publicclassJdbcUtil{
//私有静态变量,用以读取配置文件
privatestaticPropertiesconfig=newProperties();
static{
try{
//配置资源文件
config.load(JdbcUtil.class.getClassLoader().getResourceAsStream("db.properties"));
//加载驱动
Class.forName(config.getProperty("driver"));
}catch(IOExceptione){
e.printStackTrace();
}catch(ClassNotFoundExceptione){
e.printStackTrace();
}
}
publicstaticConnectiongetConnection(){
Connectionconnection=null;
try{
connection=DriverManager.getConnection(config.getProperty("url"),config.getProperty("username"),config.getProperty("password"));
}catch(SQLExceptione){
e.printStackTrace();
}
returnconnection;
}
//用以关闭连接,释放资源
publicstaticvoidreleaseConn(Connectionconnection,Statementstatement,
ResultSetresultSet){
if(resultSet!=null){
try{
resultSet.close();
}catch(SQLExceptione){
e.printStackTrace();
}
resultSet=null;
}
if(statement!=null){
try{
statement.close();
}catch(SQLExceptione){
e.printStackTrace();
}
statement=null;
}
if(connection!=null){
try{
connection.close();
}catch(SQLExceptione){
e.printStackTrace();
}
connection=null;
}
}
}
3.使用实例:
Connectionconnection=null;
Statementstatement=null;
ResultSetresultSet=null;
try{
//调用工具类中的静态方法来获取连接
connection=JdbcUtil.getConnection();
statement=connection.createStatement();
resultSet=statement.executeQuery("select*fromusers");
while(resultSet.next()){
intid=resultSet.getInt("id");
Stringname=resultSet.getString("name");
Stringpsd=resultSet.getString("password");
Stringemail=resultSet.getString("email");
Stringbirthday=resultSet.getString("birthday");
System.out.println(id+""+name+""+psd+""+email
+""+birthday);
}
}catch(Exceptione){
e.printStackTrace();
}finally{
//调用工具类中的静态方法来关闭连接,释放资源
JdbcUtil.releaseConn(connection,statement,resultSet);
}
希望本文可以对需要的朋友有帮助
# javaweb中mysql数据库连接方法
# javaweb中mysql数据库连接
# Java连接MySql的详细介绍
# java连接mysql数据库乱码的解决方法
# Java连接MYSQL数据库的实现步骤
# java连接mysql数据库详细步骤解析
# java连接MySQl数据库实例代码
# java连接Mysql数据库的工具类
# java连接MySQL数据库实现代码
# JavaWeb连接数据库MySQL的操作技巧
# java连接mysql数据库的方法
# Java+MySQL前后端连接新手小白教程
# 加载
# 类中
# 两次
# 方法来
# 配置文件
# 默认为
# 也就是说
# 放在
# 这种方法
# 就能
# 这样做
# 一处
# 以对
# 跳转到
# 在实际
# registerDriver
# DriverManager
# mysql
# connector
# strong
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】
Laravel如何配置任务调度?(Cron Job示例)
教你用AI润色文章,让你的文字表达更专业
如何在宝塔面板创建新站点?
Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
如何在云服务器上快速搭建个人网站?
java ZXing生成二维码及条码实例分享
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
JavaScript如何实现路由_前端路由原理是什么
Internet Explorer官网直接进入 IE浏览器在线体验版网址
WordPress 子目录安装中正确处理脚本路径的完整指南
百度浏览器网页无法复制文字怎么办 百度浏览器复制修复
Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】
Laravel怎么实现验证码(Captcha)功能
Laravel如何创建自定义中间件?(Middleware代码示例)
长沙做网站要多少钱,长沙国安网络怎么样?
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
如何快速搭建高效可靠的建站解决方案?
JavaScript如何操作视频_媒体API怎么控制播放
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
在线制作视频的网站有哪些,电脑如何制作视频短片?
东莞专业网站制作公司有哪些,东莞招聘网站哪个好?
香港服务器部署网站为何提示未备案?
如何在阿里云部署织梦网站?
如何在万网主机上快速搭建网站?
Win11怎么查看显卡温度 Win11任务管理器查看GPU温度【技巧】
linux写shell需要注意的问题(必看)
Python3.6正式版新特性预览
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
制作企业网站建设方案,怎样建设一个公司网站?
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
Laravel怎么调用外部API_Laravel Http Client客户端使用
nginx修改上传文件大小限制的方法
如何快速搭建安全的FTP站点?
Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID
JavaScript如何实现错误处理_try...catch如何捕获异常?
Laravel Fortify是什么,和Jetstream有什么关系
如何快速完成中国万网建站详细流程?
Laravel怎么判断请求类型_Laravel Request isMethod用法
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
google浏览器怎么清理缓存_谷歌浏览器清除缓存加速详细步骤
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?

