jdbc封装工具类

dbutils

package utils;



import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import mapper.BaseMapper;



public class DBUtils {
    private static String drivrClassName="com.mysql.jdbc.Driver";
    private static String url="jdbc:mysql://localhost:3306/movie?useSSL=false";
    private static String user="root";
    private static String password="root";
    private static Connection con;
    
    static{
        try {
            Class.forName(drivrClassName);
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
    //Object...params�ɱ����?
    public static int executeUpdate (String sql,Object...params){
        int a=0;
        try {
            con = DriverManager.getConnection(url, user, password);
            // Ԥ�����ִ����?
            PreparedStatement ps = con.prepareStatement(sql);
            for(int i=0;i<params.length;i++){
                ps.setObject((i+1), params[i]);
            }
             a= ps.executeUpdate();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            try {
                con.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
        return a;
    }
    
    
    public static List  executeQuery (String  sql,BaseMapper mapper,Object...params){
        List list=new ArrayList();
        Object o1=null;
        try {
            con =DriverManager.getConnection(url, user, password);
            // Ԥ�����ִ����?
            PreparedStatement ps = con.prepareStatement(sql);
            for (int i = 0; i < params.length; i++) {
                ps.setObject(i+1, params[i]);
                
            }
            ResultSet rs=ps.executeQuery();
            
            while(rs.next()){
                 o1=mapper.doResultSet(rs);
                list.add(o1);
            }
            

        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            try {
                con.close();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        return list;
        
        
    }
}

 

 

BaseMapper

package mapper;


import java.sql.ResultSet;
import java.sql.SQLException;

public interface BaseMapper {

    public Object doResultSet(ResultSet rs) throws SQLException ;
        
}

 

PostMapper.java

package mapper;

import java.sql.ResultSet;
import java.sql.SQLException;

import pojo.post;


public class PostMapper implements RowMapper {

    @Override
    public Object doResultSet(ResultSet rs) throws SQLException {
        post p=new post();
        p.setDescription(rs.getString("description"));
        p.setAddress(rs.getString("address"));
        p.setMoviename(rs.getString("moviename"));
        p.setId(rs.getInt("id"));
        return p;
    }

}

 

posted @ 2019-08-08 22:33  wq9  阅读(145)  评论(0)    收藏  举报