Java JDBC自定义封装工具类的步骤和完整代码
时间:2022-06-01 11:24:23|栏目:JAVA代码|点击: 次
封装JDBC工具类的作用可以优化代码,提高开发效率
步骤
① 创建配置文件(config.properties),用于存放注册驱动和连接数据库时所需要的参数值
② 自定义一个类(JDBCUtils.java)
③ 实现构造私有方法 private JDBCUtils(){}
④ 声明所需要的配置变量
private static String driverClass; private static String url; private static String username; private static String password; private static Connection conn;
⑤ 提供静态代码量,读取配置文件,并为配置变量赋值,注册驱动
⑥ 定义数据库连接方法 public static Connection getConnection();
⑦ 定义释放资源方法(两个)
// 查询操作时所使用的的释放资源方法 public static void close(Connection conn, Statement st, ResultSet rs); // 增删改操作时所使用的的释放资源方法 public static void close(Connection conn, Statement st)
完整代码
package com.cmy.utils;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
/**
* JDBC工具类
* @author ChenMingYong
*/
public class JDBCUtils {
/**
* 1.私有构造方法
*/
private JDBCUtils(){}
/**
* 2.声明所需要的配置变量
*/
private static String driverClass;
private static String url;
private static String username;
private static String password;
private static Connection conn;
// 3.提供静态代码块,读取配置文件的信息,为变量赋值,注册驱动
static {
try{
// 读取配置文件的信息,为变量赋值
InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("config.properties");
Properties prop = new Properties();
prop.load(is);
driverClass = prop.getProperty("driverClass");
url = prop.getProperty("url");
username = prop.getProperty("username");
password = prop.getProperty("password");
// 注册驱动
Class.forName(driverClass);
}
catch (Exception e){
e.printStackTrace();
}
}
/**
* 4.提供数据库连接方法
* @return
*/
public static Connection getConnection(){
try {
conn = DriverManager.getConnection(url, username, password);
}
catch (Exception e){
e.printStackTrace();
}
return conn;
}
/**
* 5.查询操作时所使用的的释放资源方法
* @param conn
* @param st
* @param rs
*/
public static void close(Connection conn, Statement st, ResultSet rs){
if(conn != null){
try{
conn.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
if(st != null){
try{
st.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
if(rs != null){
try{
rs.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
}
/**
* 5.增删改操作时所使用的的释放资源方法
* @param conn
* @param st
*/
public static void close(Connection conn, Statement st){
if(conn != null){
try{
conn.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
if(st != null){
try{
st.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
}
}
总结
栏 目:JAVA代码
下一篇:Java使用MulticastSocket实现群聊应用程序
本文标题:Java JDBC自定义封装工具类的步骤和完整代码
本文地址:http://www.codeinn.net/misctech/203377.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 3java中-jar 与nohup的对比
- 4Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7解析SpringSecurity+JWT认证流程实现
- 8java读取excel文件的两种方法
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




