java连接MySQL数据库DB类底层框架代码实现

2017-01-07 19:03:16来源:CSDN作者:qq_32329185人点击

前言:用java连接MySQL数据库代码都是十分固定的,所以直接将一些固定的代码写在一个DBmanager类中可以省去许多重复的工作,连接不同MySQL数据库只需改变user和password即可。为了方便大家,我已经将代码总结出来。

代码块

import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;/* * 该类实现JDBC的封装,主要实现代码的重用 * 核心是类的抽象过程(成员变量,成员方法), * 数据库的访问步骤: * (1)加载驱动,建立连接,创建语句对象(封装在构造方法中) * (2)对于insert,delete,update之类的操作,返回受影响的记录条数 * 若>0,则表示操作成功,否则表示操作失败,需要实现一个方法 * (3)对于select的操作,返回的是查询到的记录集,需要实现一个方法 * (4)对数据库连接对象的关闭,以释放资源,如果资源不及时的释放,系统将会出现 * “out of memory”的错误,导致系统奔溃 *  */public class DBManager {    //成员的成员变量    private Connection con;    private Statement stm;    private ResultSet rs;    //以下为封装的成员方法    /*     * 1.构造方法,实现加载驱动,建立连接,创建语句对象     */    public DBManager(){        try {            // 1.加载驱动            String driverName = "com.mysql.jdbc.Driver"; // mysql                                                            // jdbc驱动描述符,实际上就是driver类在包中的完整路径            Class.forName(driverName);            // 2.建立与数据库的连接            String url = "jdbc:mysql://127.0.0.1:3306/sale?useUnicode=true&characterEncoding=utf-8"; // 数据库连接字符串,一般使用统一资源定位符(url)的形式            String user = "root"; // 连接数据库时的用户            String password = "635241"; // 连接数据库时的密码            con = DriverManager.getConnection(url, user, password);            //3.创建语句对象            stm = con.createStatement();        } catch (Exception e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }    /*     * 2.对于insert,delete,update之类的操作,对于异常的出来,可以采取两种方式     * (1)使用try,catch     * (2)直接抛出,使用thows,即交给调用者进行处理     */    public boolean executeUpdate(String sql) throws SQLException{        boolean ret=false;        int i=stm.executeUpdate(sql);        if(i>0){            ret=true;        }        return ret;         }    /*     * 3.对于select的操作     */    public ResultSet executeQuery(String sql) throws SQLException{        rs=stm.executeQuery(sql);        return rs;    }    /*     * 4.资源的释放     */    public void close(){        try {            if (rs != null) {                rs.close();            }            if (stm != null) {                stm.close();            }            if (con != null) {                con.close();            }        } catch (SQLException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }    public Connection getCon() {        return con;    }    public void setCon(Connection con) {        this.con = con;    }    public Statement getStm() {        return stm;    }    public void setStm(Statement stm) {        this.stm = stm;    }    public ResultSet getRs() {        return rs;    }    public void setRs(ResultSet rs) {        this.rs = rs;    }}

注:记得在lib文件中导入mysql-connector-java-5.0.4-bin.jar 这个jar包,否则无法连接数据库。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台