MySqlHelper的封装

其实MySqlHelper和SqlHelper是一样的,只是使用的驱动不一样而已。

public class MySQLHelper  
{  
    public static final String url = "jdbc:mysql://127.0.0.1/vge_whu"; // 数据库连接  
    public static final String name = "com.mysql.jdbc.Driver"; // 程序驱动  
    public static final String user = "root"; // 用户名  
    public static final String password = "abc@123"; // 密码  
  
    public Connection connection = null; // 数据库连接  
    public PreparedStatement preparedStatement = null; // 待查询语句描述对象  
  
    /** 
     *  
     * 创建一个新的实例 DBHelper. 
     *  
     * @param sql 
     *            : SQL查询语句 
     */  
    public MySQLHelper()  
    {  
        try  
        {  
            Class.forName(name);// 指定连接类型  
            connection = DriverManager.getConnection(url, user, password);// 获取连接  
        } catch (Exception e)  
        {  
            e.printStackTrace();  
        }  
    }  
  
    /** 
     *  
     * @方法名称: close ; 
     * @方法描述: 关闭数据库 ; 
     * @参数 : 
     * @返回类型: void ; 
     * @throws 
     */  
    public void close()  
    {  
        try  
        {  
            this.connection.close();  
            this.preparedStatement.close();  
        } catch (SQLException e)  
        {  
            System.out.println("关闭数据库出现问题!!");  
            e.printStackTrace();  
        }  
    }  
  
    /** 
     *  
     * @方法名称: query ; 
     * @方法描述: 查询操作 ; 
     * @参数 :@param sql:查询操作语句 ; 
     * @返回类型: ResultSet :查询结果数据集; 
     * @throws 
     */  
    public ResultSet query(String sql)  
    {  
        ResultSet resultSet = null;  
  
        try  
        {  
            preparedStatement = connection.prepareStatement(sql); // 准备执行语句  
            resultSet = preparedStatement.executeQuery();  
  
        } catch (Exception e)  
        {  
            System.out.println("查询错误,请检查!!");  
            e.printStackTrace();  
        }  
        return resultSet;  
    }  
  
    /** 
     *  
     * @方法名称: executeNonquery ; 
     * @方法描述: 插入、修改、删除等操作 ; 
     * @参数 :@param sql:插入语句 
     * @返回类型: boolean ; 
     
     * @throws 
     */  
    public boolean executeNonquery(String sql)  
    {  
        boolean flag = false;  
        try  
        {  
            preparedStatement = connection.prepareStatement(sql);  
            preparedStatement.executeUpdate();  
            flag = true;  
  
        } catch (Exception e)  
        {  
            System.out.println("插入数据库时出现错误!!");  
            e.printStackTrace();  
        }  
        return flag;  
    }  
  
    /** 
     *  
     * @方法名称: getCount ; 
     * @方法描述:  获取表记录数 ; 
     * @参数 :@param sql 
     * @参数 :@return  
     * @返回类型: int 记录数
     * @throws 
     */  
    public int getCount(String sql)  
    {  
        int count=0;  
        try  
        {  
            preparedStatement=connection.prepareStatement(sql);  
            ResultSet resultSet=preparedStatement.executeQuery();  
            resultSet.last();  
            count=resultSet.getRow();  
            resultSet.close();  
              
        } catch (Exception e)  
        {  
            System.out.println("查询总记录数失败!!");  
            e.printStackTrace();  
        }  
        return count;  
    }  
} 

 

posted @ 2018-01-19 00:02  bkyvoid  阅读(297)  评论(0编辑  收藏  举报