在我们使用JDBC来连接数据库的时候,会发现,需要配置的东西很懂,而且每次使用的时候都是要重新开始配置,这样大大的增加了使用JDBC的速度,因此,我们可以将哪些需要重复配置的东西抽取出来,成为Java里面的工具类,需要配置的时候,直接JDBCUtil.就可以配置成功了
package com.mayikt.utils;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
public class JdbcUtils {
//1.将构造方法私有化,------工具类 不需要new出来,直接类名.方法名直接调用
private JdbcUtils(){
}
//2.定义工具类,需要 声明 变量
private static String driverClass;
private static String url;
private static String user;
private static String password;
//3.使用静态代码块,给我们声明好的变量赋值
static{
try{
//1读取config.properties IO 路径 相对路径
InputStream resourceAsStream = JdbcUtils.class.getClassLoader().getResourceAsStream("config.properties");
//2赋值给我们声明好的变量
Properties properties = new Properties();
properties.load(resourceAsStream);
driverClass= properties.getProperty("driverClass");
url= properties.getProperty("url");
user= properties.getProperty("user");
password = properties.getProperty("password");
//3注册驱动
Class.forName(driverClass);
}catch (ClassNotFoundException | IOException e) {
e.printStackTrace();
}
}
//4.封装连接方法
public static Connection getConnection() throws SQLException {
try{
Connection connection = DriverManager.getConnection(url, user, password);
return connection;
}catch(Exception e){
e.printStackTrace();
return null;
}
}
//释放连接方法
public static void closeConnection(ResultSet resultSet, Statement statement, Connection connection){
try{
if (statement != null)
statement.close();
if (connection != null)
connection.close();
} catch (SQLException throwables) {
throwables.printStackTrace();
}
}
public static void main(String[] args){
System.out.println(JdbcUtils.driverClass);
}
//设置方法开启事务
public static void beginTransaction(Connection connection) throws SQLException {
connection.setAutoCommit(false);
}
//设置方法提交事务
public static void commitTransaction(Connection connection) throws SQLException {
connection.commit();
}
public static void rollBackTransaction(Connection connection) throws SQLException {
if (connection!=null){
try{
connection.rollback();
}catch (Exception e){
e.printStackTrace();
}
}
}
}
相关推荐
LangChain + PlayWright实战:5分钟搞定网页自动化测试(附完整代码)
本文详细介绍了如何利用LangChain与PlayWright构建智能网页自动化测试系统。通过环境配置、核心架构设计、实战Agent构建及性能优化等步骤,开发者可以快速实现高效的Web操作自动化,提升测试效率。文章还提供了完整代码示例和典型问题解决方案。
JDBC工具类——JdbcUtils
我的web一、最终工具类的组成1、类加载时加载驱动2、dbcp连接池:dbcp.properties3、ThreadLocal控制事务4、连接池提高资源利用率5、rowmapper封装减少代码冗余6、template封装减少dao层代码冗余二、JDBC工具类的演变1.第一代JdbcUtils工具类①.工具类②.测试类2.第二代JdbcUtils工具类①.dbcp.properties②.工具类③.测试类 一、最终工具类的组成 1、类加载时加载驱动 将Class.forName(“com.mysql.jdb
若依ruoyi框架实现单点登录或者接入统一认证
log.info("单点登录用户[{}]不存在, 需要创建.", loginName);log.info("单点登录用户[{}]已存在.", loginName);jsonObjectData.put("nickName","单点1");if (code.equals("0")) {//验证成功需要自动登录。jsonObject.put("msg","验证成功");ajax.put("msg", "登录成功");
JDBC 数据库连接池(JDBCUtils工具类)
文章目录前言一、JDBC作用?二、获取数据的连接方式三、Statement/PreStatement执行sql四、ResultSet结果集五、JDBC相关API总结 前言 注:记录自己学的知识点,用词极其不严谨,写的随意,无参考价值。 一、JDBC作用? 连接数据库,数据库有多个厂家,为方便开发者的调用,各个数据库厂家统一了一个接口类供调用。 二、获取数据的连接方式 写个最好用的, 通过Properties对象获取配置文件。 public void connect03() throws IOEx
第33次CCF-CSP认证考试 第一题 词频统计 满分题解
本人小白一枚,抱着学习的态度想到网上找一些csp的参考答案,但由于实力有限,大佬的代码大都看不太懂,于是萌生了想用一些简单,基础的语句完成csp前两题的想法并公开,以便与像我这样实力不强的同学交流学习,如有更好的建议,还请斧正,感谢!
Rockchip RK3566 Buildroot SDK构建与内核编译实战指南
嵌入式Linux开发中,交叉编译环境是系统启动的基础支撑。Buildroot作为轻量级嵌入式构建框架,通过配置驱动、自动化下载和分层编译机制,显著降低定制化Linux发行版的集成门槛。其核心价值在于将内核、根文件系统与工具链统一管理,兼顾资源约束下的确定性构建与工程可复现性。典型应用场景涵盖ARM64平台(如RK3566)的固件开发、IoT设备量产镜像生成及硬件Bring-up阶段的快速验证。本文围绕Buildroot SDK全流程实践,深入解析环境搭建、Repo源码同步、离线DL库预置及内核编译等关键环节
JDBC Utils 详解(通俗易懂)
JDBC 第三节 Utils工具类详解!
手把手教你用Kokoro-82M-v1.1-zh搭建本地TTS服务(含WebSocket接口)
本文详细介绍了如何使用Kokoro-82M-v1.1-zh模型搭建本地TTS服务,包括环境配置、模型部署、WebSocket接口实现及性能优化。通过实战指南,开发者可以快速掌握本地部署TTS系统的关键技术,提升语音交互应用的开发效率。
Java | 详解 Java连接MySQL、编写JdbcUtils工具类、使用数据库连接池、使用JavaTemplate
使用java连接mysql数据库进行增删改查、编写JdbcUtils工具类、使用数据库连接池C3P0以及Druid、使用JavaTemplate
告别复杂编码!用GNURadio + VLC + USRP三步搞定无线视频“直播”(附ffmpeg转码命令)
本文介绍了一种基于GNURadio、VLC和USRP的无线视频传输方案,无需复杂编码即可实现实时视频传输。通过三步流程(工具准备、音频验证、视频传输)和ffmpeg转码命令,帮助用户快速搭建系统,适用于教学演示和原型开发。方案特别强调实时显示效果和带宽优化技巧。
python批量调用大模型API:多线程和异步协程
本文介绍了利用多线程技术批量调用大模型API的实现方法。核心是通过并发请求提高处理效率,主要采用线程池管理并发数量、结果聚合等技术。文章提供了一个完整的Python实现示例,包含APIBatchCaller类及其single_api_call和batch_call方法,详细解析了并发控制、错误处理等关键点,并给出了使用注意事项,包括并发数设置、重试策略和超时处理等。该方案特别适合IO密集型任务,能显著提升批量API调用的效率。
JDBCUtils工具类
JDBCUtils工具类的使用 package util; import java.io.FileReader; import java.io.IOException; import java.net.URL; import java.sql.*; import java.util.Properties; //JDBC工具类(都是静态) public class JDBCUtils { ...
YOLOv11知识蒸馏实战:让小模型拥有大模型90%精度,速度提升3倍的终极教程
在self.alpha = alpha # 蒸馏损失权重self.temperature = temperature # 温度系数,控制分布平滑度# 输出分布蒸馏(KL散度损失)# 中间特征蒸馏(MSE损失,对齐中间层特征)# 总蒸馏损失知识蒸馏是YOLOv11在“小模型高性能部署”场景的“破局之法”——它让小模型能“站在大模型的肩膀上”,兼具速度与精度。从损失函数定义到多阶段训练,再到实战落地,本教程已为你铺就了一条清晰的路径。
JdbcUtils工具类
public class JdbcUtils { // 创建一个连接池连接池 static DruidDataSource dataSource; static { try { InputStream inputStream = JdbcUtils.class.getClassLoader() .getResourceAsStream("jdbc.properties")...
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
ssm框架搭建
这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载
JDBCUtils工具类的使用
JDBCUtils 目的:简化书写 分析: 1,注册驱动 2,抽取一个方法获取连接对象 需求不想传递参数,但是还要保证工具类的通用性 解决:配置文件 jdbc.properties url = username = password = driver = 一,先看一下原来的连接操作 Connection conn = null; Statement sta...
pscad IEEE标准系统搭建说明
pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。
JDBCUtils工具类的实现
JDBCUtils工具类的实现 需求: 之前的代码出现过多次的重复性工作,为了提高代码的复用性,我们将重复代码提出来封装成一个工具类 开发步骤:1.创建jdbcutils类, 2.私有化构造函数,防止外界直接new对象 3.提供getConnection,用来对外界提供获取数据库连接 4.提供close方法,用来关闭资源 5.测试 注意:...
文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况
主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。
JDBC:JDBCUtils工具类
一、JDBCUtils工具类 作用:使代码更加的简洁,更具有逻辑性和复用性。 简介:连接数据库的四个参数:驱动类、URL、用户名、密码 若要更改连接数据库信息,那么就可以直接在配置文件中修改这四个参数; 具体实现代码如下: JdbcUtils.class package com.health.JDBC.util; import java.io.FileNotFoundExcept...
jdbc 工具类 JDBCUtils
自己在代码中写上,为了去掉jdbc操作的繁琐代码。 /** * JDBC工具类 */ public class JDBCUtils { private static String url; private static String user; private static String password; private static String driver; /** * 文件的读取,只需要读取一次即可拿到这些值。使用静态代码块 */
JDBCUtils工具类编写
1.固定字符串=常量(大写) 2.静态代码块 3.连接方法getConnection() 4.关闭连接close(ResultSet rs,Statemment st,Connection connection) 5.重写close(Statemment st,Connection connection)(声明:不重写,也可以将rs设为NULL); ...
使用JDBCUtils工具类时报NoClassDefFoundError:无法初始化类util . jdbcutils
使用JDBCUtils工具类时报NoClassDefFoundError:无法初始化类util . jdbcutils 使用JDBCUtils工具类时报NoClassDefFoundError:无法初始化类util . jdbcutils package Utils; import java.io.FileReader; import java.io.IOException; import jav...
【JDBC】JdbcUtils工具类
〖代码〗JDBCUtils工具类 我寻见一片海 碧蓝且耀着光 大片船只航行其上 都向着远方 Shared by Foriver_江河 © 1997-8023 江河 All Rights Reserve
JDBCUtils 工具类的抽取
*抽取 目的:简化书写 * 分析: 1. 注册驱动也抽取 2. 抽取一个方法获取连接对象 * 需求:不想传递参数(麻烦),还得保证工具类的通用性。 * 解决:配置文件 jdbc.properties url=jdbc:mysql://IP地...
关于JDBCUtils工具类的介绍与使用
目录 前言 一、JDBCUtils是什么? 二、JDBCUtils由哪些部分组成? 1、常用变量 2、完成初始化操作 3、获取连接 4、非查询方法(增删改等功能) 5、查询方法 6、释放资源 三、总结 前言 程序员的天职是什么?在我看来,最基础的能力就是消灭重复化的劳动,把一切繁杂琐碎的事整合为程序化的任务。 基于此目的,我们把一些常用的变量和方法封装入JDBCUtils类中,即可达到一劳永逸的美好编程体验。 [注] 本文以阿里提供的Druid为例,阅读本文前应对其有基本了解。如果没有就把代码当成例子来看,
239



被折叠的 条评论
为什么被折叠?



