MySQL连接

MySQL工具包

MySQL实现简单链接

一 引入工具包

JBDCUtils,无需更改,直接使用即可。


import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;public class JDBCUtil {private static String URL;private static String USERNAME;private static String PASSWORD;// 静态代码块,类加载时执行static {try {Properties properties = new Properties();InputStream in = JDBCUtil.class.getClassLoader().getResourceAsStream("db.properties");try {properties.load(in);} catch (IOException e) {e.printStackTrace();}String DRIVER = properties.getProperty("driver");URL = properties.getProperty("url");USERNAME = properties.getProperty("username");PASSWORD = properties.getProperty("password");Class.forName(DRIVER);} catch (ClassNotFoundException e) {e.printStackTrace();}}static ThreadLocal<Connection> local = new ThreadLocal<>();public static Connection getConnection() {try {//从ThreadLocal中取对象Connection connection = local.get();//判断ThreadLocal中是否为空if (connection == null) {connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);local.set(connection);return connection;} elsereturn local.get();} catch (SQLException throwables) {throwables.printStackTrace();}return null;}// 关闭资源public static void closeAll(Connection conn, Statement stat, ResultSet rs) {try {if (conn != null) {conn.close();local.remove();}if (stat != null) stat.close();if (rs != null) rs.close();} catch (SQLException throwables) {throwables.printStackTrace();}}//开启事务public static void begin() {Connection connection;try {connection = getConnection();connection.setAutoCommit(false);} catch (SQLException throwables) {throwables.printStackTrace();}}// 提交事务public static void commit() {Connection connection = null;try {connection = getConnection();connection.commit();} catch (SQLException throwables) {throwables.printStackTrace();} finally {closeAll(connection, null, null);}}// 回滚public static void rollback() {Connection connection = null;try {connection = getConnection();connection.rollback();} catch (SQLException throwables) {throwables.printStackTrace();} finally {closeAll(connection, null, null);}}
}

二 资源文件

db.properties 后缀名必须以 .properties结尾,上述工具类才能自动扫描到这个文件

#8.0版本数据库
driver = com.mysql.cj.jdbc.Driver #加载驱动  5.6驱动: driver = com.mysql.jdbc.Driver
url = jdbc:mysql://localhost:3306/store  #具体的表
username = root #账户
password = root #密码

三 加载jar包

必须放在web->WEB-INF->lib中 否则就会存在加载不成功的问题
放入过后必须右键
在这里插入图片描述

测试

测试是否连接成功

<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body><% try{Connection conn = JDBCUtil.getConnection();Connection connection = JDBCUtil.getConnection();if(conn!=null){out.println("mysql数据库连接成功!!!");}else{out.println("数据库连接失败!!!");}}catch(ClassNotFoundException e){e.printStackTrace();}
%>
</body>
</html>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/34744.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于PHP+MySQL组合开发的在线客服小程序源码系统 带完整的安装代码包以及搭建教程

系统概述 源码系统是专门为满足企业在线客服需求而设计的&#xff0c;它集成了多种功能&#xff0c;能够帮助企业实现与用户的实时沟通、问题解答、信息反馈等。通过该系统&#xff0c;企业可以更好地了解用户需求&#xff0c;提升用户体验&#xff0c;增强用户对企业的信任感…

Linux[高级管理]——Squid代理服务器的部署和应用(传统模式详解)

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f468;‍&#x1f4bb;Linux高级管理专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年6月24日11点11分 &#x1f004;️文章质量&#xff1a;95分 目录 ————前言———— Squid功能 Squ…

【JavaEE精炼宝库】多线程进阶(1)常见锁策略 | CAS | ABA问题

目录 一、常见的锁策略&#xff1a; 1.1 悲观锁 | 乐观锁&#xff1a; 1.2 重量级锁 | 轻量级锁&#xff1a; 1.3 自旋锁 | 挂起等待锁&#xff1a; 1.4 公平锁 | 非公平锁&#xff1a; 1.5 可重入锁 | 不可重入锁&#xff1a; 1.6 互斥锁 | 读写锁&#xff1a; 1.7 面…

Spring Boot 集成 MinIO 实现文件上传

Spring Boot 集成 MinIO 实现文件上传 一、 Minio 服务准备 MinIO的搭建过程参考 Docker 搭建 MinIO 对象存储。 登录MinIO控制台&#xff0c;新建一个 Bucket&#xff0c;修改 Bucket 权限为公开。 二、MinIO 集成 添加 MinIO 依赖 <!-- https://mvnrepository.com/ar…

【工具测评】ONLYOFFICE——你的下一款桌面编辑器

文章目录 前言一、安装1.1 跳转官网下载安装包1.2 安装步骤 二、功能介绍2.1 功能全面的 PDF 编辑器2.2 PDF 表单2.3 文本文档编辑器的更新2.4 电子表格编辑器的更新2.5 演示文稿编辑器有哪些更新2.6 所有编辑器中的改进内容2.7 从右至左显示 & 新的本地化选项2.8 可用性提…

重生奇迹MU整理装备技巧

除了注意一些基本的事项外&#xff0c;还有一些技巧可以帮助我们更快更好地整理装备&#xff0c;提升自己在游戏中的表现。 1. 理性地管理装备是取得胜利的关键。在整理装备时&#xff0c;根据不同的属性和需求&#xff0c;可以将装备分类&#xff0c;比如攻击型、防御型、辅助…

CRMEB 多门店后台登录入口地址修改(默认admin)

一、>2.4版本 1、修改后端 config/admin.php 配置文件,为自定义的后缀 2、修改 平台后台前端源码中 view/admin/src/settings.js 文件,修改为和上面一样的配置 3、修改后重新打包前端代码,并且覆盖到后端的 public 目录下&#xff1a;打包方法 4、重启swoole 二、<2.4版…

云函数-uniapp + uniCloud 订阅消息实战教程(二)

一、创建uniCloud项目 在 HBuilderX 新建项目界面&#xff0c;选择 uni-app项目&#xff0c;输入项目名称&#xff0c;选择默认模板即可&#xff0c;根据个人需要选择 vue版本&#xff0c;并勾选 启用uniCloud&#xff0c;在右侧选择服务供应商&#xff08;支付宝云、阿里云、…

再不挖掘就晚了!本周三分之二二区以上 | GBD数据库周报(6.12~6.18)

全球疾病负担&#xff08;GBD&#xff09;是迄今为止规模最大、最全面的一项研究&#xff0c;旨在量化不同地区和不同时期的健康损失&#xff0c;从而改善卫生系统并消除差异。 该研究由华盛顿大学健康指标与评估研究所 (IHME) 牵头&#xff0c;是一项真正的全球性研究&#xf…

Tensorflow入门实战 T06-Vgg16 明星识别

目录 1、前言 2、 完整代码 3、运行过程结果 4、遇到的问题 5、小结 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 1、前言 这周主要是使用VGG16模型&#xff0c;完成明星照片识别。 2、 完整代…

奇点临近:人类与智能时代的未来

在信息爆炸的时代&#xff0c;我们每天都被海量的信息所淹没&#xff0c;如何才能在这个嘈杂的世界中找到真正有价值的信息&#xff1f;如何才能利用信息的力量&#xff0c;提升我们的认知水平&#xff0c;重塑我们的未来&#xff1f; 这些问题的答案&#xff0c;或许都能在雷…

无需高配置 怎么获得超流畅的VR体验?

传统VR眼镜在使用中存在一些显著不足&#xff0c;而实时渲染技术又是如何解决的&#xff1f;接下来与大家共同探讨遇到的问题以及实时渲染在VR眼镜中的实际应用。 1、高配置要求 目前主流VR一体机的眼镜需要较高配置才能运行普通VR内容&#xff0c;且受限于VR眼镜的算力限制&…

【小程序】聊天功能

文章目录 聊天功能实现功能实现思路后端前端效果展示 聊天功能 实现功能 要实现一个聊天机器人&#xff0c;它能够解答用户疑问&#xff0c;并且能够识别到用户聊天的主题&#xff0c;涉及到饮食方面时&#xff0c;会自动决定是否要去数据库中读取用户的相关喜好信息&#xf…

【ARM】MDK自动备份源文件

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 解决MDK在编写文档的时候需要找回上一版代码的问题。 2、 问题场景 目前大部分情况下对于源代码的管理都是使用的Git等第三方的代码管理平台。这样的第三方代码管理平台都是针对与代码的版本更新进行管理。对于本地…

2024年6月上半月30篇大语言模型的论文推荐

大语言模型&#xff08;LLMs&#xff09;在近年来取得了快速发展。本文总结了2024年6月上半月发布的一些最重要的LLM论文&#xff0c;可以让你及时了解最新进展。 LLM进展与基准测试 1、WildBench: Benchmarking LLMs with Challenging Tasks from Real Users in the Wild Wi…

数字心动+华为运动健康服务 使用体验指导

一、应用介绍 “数字心动”是一个体育生态平台APP&#xff0c;践行“体育大健康娱乐数字营销”模式&#xff0c;打造深度融合体育平台。APP集跑步运动记录、赛事活动报名、成绩/大众等级证书查询等多功能于一体&#xff0c;采取“线上线下”模式&#xff0c;结合协会、行业、品…

【CT】LeetCode手撕—56. 合并区间

目录 题目1- 思路2- 实现⭐56. 合并区间——题解思路 3- ACM 实现 题目 原题连接&#xff1a;56. 合并区间 1- 思路 模式识别&#xff1a;合并区间 ——> 数组先排序 思路 1.先对数组内容进行排序 ——> 定义 left、right 根据排序后的结果&#xff0c;更新 right2.遍…

高性能的多媒体播放器(提供补帧功能)

一、简介 1、一款高性能的多媒体播放器&#xff0c;支持几乎所有主流和部分罕见的音视频格式。无需额外安装coder插件&#xff0c;即可顺利播放各种媒体文件。此外&#xff0c;它还提供补帧功能&#xff0c;显著提升了视频播放的流畅性和视觉效果 二、下载 1、文末有下载链接,不…

Shopee API接口:一键获取商品买家评论数据,赋能电商运营新智慧

一、核心功能介绍——一键获取商品买家评论数据 在电商领域&#xff0c;买家评论是反映商品质量和市场反馈的重要指标。为了帮助商家更好地了解买家需求&#xff0c;优化产品和服务&#xff0c;Shopee接口特别推出了获取商品买家评论数据的功能。以下是该功能的核心介绍&#…

数据库设计文档编写

PS&#xff1a;建议使用第三种方法 方法1&#xff1a;使用 Navicat 生成数据库设计文档 效果 先看简单的效果图&#xff0c;如果效果合适&#xff0c;大家在进行测试使用&#xff0c;不合适直接撤退&#xff0c;也不浪费时间。 随后在docx文档中生成目标字段的表格&#xf…