对数据库封装的应用

数据库技术日益强大,成为必需,在编写程序时必须得连接数据库。但是每次连接数据库都得写一大段相同的连接数据库的代码,这样就加大了代码量浪费了时间,那么既然是重复的步骤,我们能不能把它当做一个函数一样,用时调用就好,于是就有了对其的封装:

public class DBUtil {

    // 解决维护性功能 properties
    private static String driver ;
    private static String url ;
    private static String jdbcuser ;
    private static String pwd ;

    public Connection conn = null;
    public PreparedStatement pstm = null;
    public ResultSet rs = null;//这里都定义为全局变量方便操作

    public static Properties properties = new Properties();

    // 获取db.properties资源 , static方法代表软件一打开就会自动加载资源文件,这里更简化了代码量,并容易更改;
   
    static {
        try {
            properties.load(DBUtil.class.getClassLoader().getResourceAsStream("db.properties"));
            driver = properties.getProperty("driver");
            url = properties.getProperty("url");
            jdbcuser = properties.getProperty("jdbcuser");
            pwd = properties.getProperty("pwd");
        } catch (IOException e) {
            e.printStackTrace();
        }


    }

    // 1. 实现数据库连接的获取
    public Connection getConn(){
        try {
            Class.forName(driver);

            conn = DriverManager.getConnection(url, jdbcuser, pwd);
        } catch (Exception e) {
            e.printStackTrace();
        }

        return conn;
    }
    }

db.properties中代码(这样写方便更改数据库)

driver="com.mysql.jdbc.Driver";//
url="jdbc:mysql://127.0.0.1:3306/db_java1ssm?useSSL=true&characterEncoding=utf-8";//这里为自己要连接的数据库,当然端口也是会变的;
jdbcuser="root";//安装Mysql时的密码和用户名
pwd="****";//输入自己的密码

最后在将关闭(释放)数据库连接封装,也是重复内容。

//实现数据库资源释放
    public void closeResource(ResultSet rs, PreparedStatement pstm,Connection conn){
        if(rs!=null){
            try {
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        if(pstm!=null){
            try {
                pstm.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        if(conn!=null){
            try {
                conn.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
```以上


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值