c语言sscanf函数的用法是什么
286
2023-01-28
Java JDBC自定义封装工具类的步骤和完整代码
封装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;
prihttp://vate 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.clhttp://ose();
}
catch (SQLException e){
e.printStackTrace();
}
}
}
/**
* 5.增删改操作时所使用的的释放资源方法
* @param conn
* @param st
*/
public static void close(Connection conn, Statement st){
if(conhttp://n != null){
try{
conn.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
if(st != null){
try{
st.close();
}
catch (SQLException e){
e.printStackTrace();
}
}
}
}
总结
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~