【JDBC】学习路径5-提取JDBCUtils工具类
回顾我们上面几节的内容,我们发现重复代码非常多,比如注册驱动、连接、关闭close()等代码,非常繁杂。
于是我们将这些重复的大段代码进行包装。提取成JDBCUtils工具类。
第一章:提取注册连接模块
import java.sql.Connection;
import java.sql.DriverManager;
public class JDBCUtils {
private static final String CURL = "jdbc:mysql://localhost:3306/jdbc_01?useUnicode=true&characterEncoding=UTF8";
private static final String USERNAME = "root";
private static final String PASSWORD = "88888888";
public static Connection getConnection(){
try {
Class.forName("com.mysql.cj.jdbc.Driver");
return DriverManager.getConnection(CURL,USERNAME,PASSWORD);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
第二章:提取关闭close()代码
...
public static void close(Connection con, PreparedStatement pstmt, ResultSet rs){
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
...
第三章:使用我们的工具类
把上一节写的代码简化一下


这个过程利用了重构的思想。
把大量重复的代码包装起来。
那么我们现在的JDBC程序模版如下:
public static boolean JDBC_Name(){
Connection con=null;
PreparedStatement pstmt =null;
ResultSet rs =null;
JDBCUtils.getConnection();
try {
con = JDBCUtils.getConnection();
...
return true;
} catch (Exception e) {
e.printStackTrace();
}finally{
JDBCUtils.close(con,pstmt,rs);
}
return false;
}
【JDBC】学习路径5-提取JDBCUtils工具类的更多相关文章
- JavaWeb基础之JdbcUtils工具类1.0
2016年12月20日,第一次学习JDBC.看的是传智播客崔希凡老师的视频,东北口音很是风趣幽默,技术之牛让人膜拜.2017年9月21日,再次重温web知识,分享JdbcUtils工具类,用以接下来的 ...
- JavaWeb基础之JdbcUtils工具类final
JdbcUtils工具类3.0最终版,添加了事务相关功能和释放链接.最终版本可以直接打成jar包,在后面的基本项目都会使用该工具类 1. JdbcUtils代码 /** * 最终版 * @author ...
- Druid 连接池 JDBCUtils 工具类的使用
Druid工具介绍 它不仅仅是一个数据库连接池,它还包含一个ProxyDriver,一系列内置的JDBC组件库,一个SQL Parser. 支持所有JDBC兼容的数据库,包括Oracle.MySQL. ...
- 创建JDBCUtils工具类
JDBCUtils工具类 私有化构造函数,外界无法直接创建对象 提供公共的,静态的,getConnection 方法,用来给外界提供数据库连接 提供公共的,静态的,close方法,用来释放资源 pac ...
- 记一次关于JDBCUtils工具类的编写
jdbc.properties数据库配置的属性文件内容如下 jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/xxxx ...
- JavaWeb基础之JdbcUtils工具类2.0
使用c3p0连接池来改版JdbcUtils工具 1. 使用c3p0连接池获取连接,使代码更加简单 /** * 使用c3p0连接池做小工具 * JdbcUtils v2.0 * @author hui. ...
- Java学习笔记49(DBUtils工具类二)
上一篇文章是我们自己模拟的DBUtils工具类,其实有开发好的工具类 这里使用commons-dbutils-1.6.jar 事务的简单介绍: 在数据库中应用事务处理案例:转账案例 张三和李四都有有自 ...
- Java学习笔记48(DBUtils工具类一)
上一篇的例子可以明显看出,在增删改查的时候,很多的代码都是重复的, 那么,是否可以将增删改查封装成一个类,方便使用者 package demo; /* * 实现JDBC的工具类 * 定义方法,直接返回 ...
- JDBC操作数据库 封装好的工具类
mysql sqlserver oracle 数据库的驱动jar包http://download.csdn.net/download/csdn576038874/8833683package cn.h ...
随机推荐
- Docker容器编译安装Redis
Docker容器编译安装Redis 1.创建容器 -i 交互模式 -d 后端运行 -h 容器的hostname --name 容器名 --network 网卡 --ip IP地址 -p 端口映射 -- ...
- 【题解】Codeforces Round #798 (Div. 2)
本篇为 Codeforces Round #798 (Div. 2) 也就是 CF1689 的题解,因本人水平比较菜,所以只有前四题 A.Lex String 题目描述 原题面 给定两个字符串 \(a ...
- 关于VHDL中case语句多执行语句的书写方式(转载stackoverflow.com并做翻译汇总)
很多国内的教材对于case语句的讲解非常单一,比如: 1 [标号:]CASE 多值表达式 IS 2 WHEN 选择值 => 被赋值变量 <=赋值变量: 3 WHEN 选择值 => 被 ...
- Oracle账户被锁(the account is locked)
问题: 安装好Oracle之后用scott登录报错:ERROR:ORA-28000:the account is locked 解决方案: Win+R打开命令行输入:sqlplus 使用system账 ...
- SAP 实例 9 Text output
REPORT demo_show_text. CLASS demo DEFINITION. PUBLIC SECTION. CLASS-METHODS main. ENDCLASS. CLASS de ...
- go-zero微服务实战系列(八、如何处理每秒上万次的下单请求)
在前几篇的文章中,我们花了很大的篇幅介绍如何利用缓存优化系统的读性能,究其原因在于我们的产品大多是一个读多写少的场景,尤其是在产品的初期,可能多数的用户只是过来查看商品,真正下单的用户非常少.但随着业 ...
- SpringBoot配置多环境下的properties配置文件
1.新建SpringBoot项目之后,再另外创建两个properties文件 2.配置详情 主文件 dev和test文件 两者只是里面的配置信息有所不同而已,比如mysql, redis, nacos ...
- get前言之版本控制-get和SVN的区别
版本控制什么是版本控制版本控制(Revision control)是一种在开发的过程中用于管理我们对文件.目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术. ~实 ...
- Android Studio的初次认识
Android的初试 一.认识Android Studio 在我们新建项目的时候,会遇到这样的一个窗口,首先我们认识一下这些都是什么,这样我们才能够更好的进行下一步的学习! 这里的 Phone and ...
- 音响音箱/恒温壶/电量显示/电子数字时钟等LED数码管显示驱动IC-VK1640B 8段12位/12段8位显示
市面上最常用的数码管为七段/八段显示,八段数码管比七段数码管多一个发光二极管单元(比七段数码管多一个点),又按能显示多少个"8"可分为1位.2位.4位等等.数码管又分为共阳极驱动/ ...