JAVA jdbc封装 DbUtil 类 1.0

需要掌握:Java JDBC ConnectionFactory类1.0

说明

由于 JDBC 操作数据库,进行增删改查,大部分代码都相同,所以创建工具类,封装 增删改查操作

代码

import java.sql.*;
import java.util.ArrayList;
import java.util.List;


public class DbUtils {
    protected Connection conn;

    /**
     * 查询
     * @param sql
     * @param objects
     * @throws SQLException
     */
    public List<Object[]> query(String sql,Object ... objects ) throws SQLException{
        PreparedStatement ps=conn.prepareStatement(sql);
        if(objects!=null && objects.length>0){
            for(int i=0;i<objects.length;i++){
                ps.setObject(i+1, objects[i]);
            }
        }
        ResultSet rs=ps.executeQuery();
        ResultSetMetaData metaData = rs.getMetaData();
        int columnNum=metaData.getColumnCount();

        List list=new ArrayList();
        while(rs.next()){
            Object[] array=new Object[columnNum];
            for(int i=0;i<columnNum;i++){
                array[i]=rs.getObject(i+1);
            }
            list.add(array);
        }
        rs.close();
        ps.close();
        return list;
    }

    /**
     * 增删改
     * @param sql
     * @param objects
     * @return
     * @throws SQLException
     */
    public int update(String sql,Object ... objects) throws SQLException{
        PreparedStatement ps=conn.prepareStatement(sql);
        if(objects!=null && objects.length>0){
            for(int i=0;i<objects.length;i++){
                ps.setObject(i+1, objects[i]);
            }
        }
        int i=ps.executeUpdate();
        ps.close();
        return i;
    }

    public void close() throws SQLException{
        if(conn!=null){
            conn.close();
        }
    }
    public void setConnection(Connection connection) {
        this.conn = connection;
    }
}

原文出处:/show_1EF4t6cK0RGm.html