使用JDBC连接MySQL数据库的工具类

package com.zhushen.util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class MysqlConn {
    private String DBName;
    private String UserName;
    private String PassWord;
    private String Host;
    private Connection conn;
    private PreparedStatement pst;
    private ResultSet rs;
    /**通过参数的构造器传入连接数据库所需要的数据
     * @param Host//主机的IP或者域名
     * @param DBName//所连接数据库的名称
     * @param UserName//数据库的用户名
     * @param PassWord//数据库的密码
     */
    public MysqlConn(String Host,String DBName,String UserName,String PassWord) {
        super();
        this.Host=Host;
        this.DBName=DBName;
        this.UserName=UserName;
        this.PassWord=PassWord;
    }

    //数据库的连接方法
    private void getConnection(){
        String URL="jdbc:mysql://"+Host+":3306/"+DBName;
            try {
                Class.forName("com.mysql.jdbc.Driver");
                conn=DriverManager.getConnection(URL, UserName, PassWord);
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            } catch (SQLException e) {
                e.printStackTrace();
            }
    }

    /**数据的查询方法  
     * @param sql//查询的SQL语句
     * @param objects//参数列表
     * @return//返回ResultSet结果集
     */
    public ResultSet executeQuery(String sql,Object...objects){
        try {
            this.getConnection();
            pst=conn.prepareStatement(sql);
            if(objects!=null){
                for(int i=0;i1, objects[i]);
                }
            }
            return rs=pst.executeQuery();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return null;
    }
    /**数据库的更新方法--增加,修改,删除
     * @param sql//更新数据库的SQL语句
     * @param objects//参数列表
     * @return//返回一个整数,大于0说明更新成功
     */
    public int executeUpdate(String sql,Object...objects){
        try {
            this.getConnection();
            pst=conn.prepareStatement(sql);
            if(objects!=null){
                for(int i=0;i1, objects[i]);
                }
            }
            return pst.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally{
            this.close();
        }
        return -1;
    }
    //关闭数据库连接
    public void close(){
        if(rs!=null){
            try {
                rs.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

        if(pst!=null){
            try {
                pst.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }

        if(conn!=null){
            try {
                conn.close();
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }   
}

你可能感兴趣的:(综合技能)