当前位置:Gxlcms > 数据库问题 > JDBC工具类的封装

JDBC工具类的封装

时间:2021-07-01 10:21:17 帮助过:21人阅读

JDBC工具类的封装

 

代码如下:

  创建JDBC工具类:

package com.guisha.JDBC.Privatre;

import java.sql.*;

/**
 * 方法描述
 * @since: 1.0.0
 * @param: cJDBC工具类的封装,简化JDBC编程
 * @return:
 * @author: Mr.cheng
 * @date:
 */
public class DBUtil {
    /**
     * 工具类中的构造方法是私有的
     * 工具类中的方法都是静态的,不要要new对象,直接采用类名.方法名
    */
    private DBUtil(){

    }
    /**
     * 定义静态代码块
     * 静态代码块在类加时执行,并且只执行一次(可能程序中需要加载两次驱动,这里定义一个代码块只执行一次)
     */
    static{
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    /**
     * 定义数据库操作对象
     * 链接对象
     * 异常直接抛出
     */
    public static Connection getConnecTion() throws SQLException {
        return DriverManager.getConnection("jdbc:mysql://localhost:3306/user","root","guisha");
    }

    public static void close(Connection coon , Statement ps , ResultSet rt){
        if (rt != null){
            try {
                rt.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (ps != null){
            try {
                ps.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        if (coon != null){
            try {
                coon.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}

  使用工具类进行模糊查询:

package com.guisha.JDBC.Privatre;

import java.sql.*;
/**
 * 方法描述
 *
 * @since: 1.0.0
 * @param:
 * @return:
 * @author: Mr.cheng
 * @date: 2021年1月6日 21点48分
 */
public class JDBCTest_05 {

    public static void main(String[] args) {
        Connection conn = null;
        PreparedStatement ps = null;
        ResultSet rt = null;
        try {
            //创建链接
            conn = DBUtil.getConnecTion();
            //创建模糊查询SQL
            String sql = "select USER_NAME FROM CENTER_CAT WHERE USER_NAME like ? ";
            //获取数据库操作对象 执行SQL
            ps = conn.prepareStatement(sql);
            //给?传值
            ps.setString(1,"_i%");
            rt = ps.executeQuery();
            //遍历结构集
            while (rt.next()){
                System.out.println(rt.getString("USER_NAME"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }finally {
            //释放资源
            DBUtil.close(conn,ps,rt);
        }
    }
}

  运行结果如下:

技术图片

 

 

 

上一篇:JDBC事务自动提交机制

JDBC工具类的封装

标签:@param   alt   lazy   private   try   释放   exec   加载   mic   

人气教程排行