20201117_张福龙

知识总结:

1.封装,将数据与操作数据的源代码程序进行结合,将函数封装起来;需要用到的时候可以直接调用,简化了编程的过程,方便使用者操作;

2.对函数的封装步骤:
(1)连接数据库;
(2)增、删、改的方法;
(3)查的方法;
(4)给占位符赋值;
(5)关闭资源;

函数封装程序实现:


package com.itlaobing.jdbc;
import java.sql.DriverManager;
import java.sql.ResultSet;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
public class DBUtils{
    java.sql.Connection conn=null;
    PreparedStatement psts=null;
    ResultSet rs=null;
//连接数据库
    public void getConnection() throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/cpi","root","");
}
//增、删、改的方法
    public int executeUpdate(String sql,Object...values)throws Exception{
        getConnection();
        java.sql.PreparedStatement psts = conn.prepareStatement(sql);
        setObject(values);
        int i=psts.executeUpdate();
        return i;

    }
    //查询方法
    public ResultSet executeQuery(String sql,Object...values)throws Exception{
        getConnection();
        java.sql.PreparedStatement psts = conn.prepareStatement(sql);
        setObject(values);
        ResultSet rs = psts.executeQuery();
        return rs;
    }
    
//给占位符赋值
    public void setObject(Object...values) throws Exception {
        if(values !=null && values.length>0) {
        for(int i=0;i<values.length;i++) {
        psts.setObject(i+1,values[i]);
        }
    }
}
    //关闭资源
    public void close()throws Exception {
        if(rs !=null||rs.isClosed()==false ) {
            rs.close();
        }
        if(psts !=null||psts.isClosed()==false) {
        }
        if(conn !=null||psts.isClosed()==false) {
        }
      }
}
3.调用封装函数实现增删改查;
例如实现对数据库中数据的删除命令如下:
package com.itlaobing.jdbc;

import java.sql.ResultSet;

public class Text {
public static void main(String[] args) {
    DBUtils utils=new DBUtils();
    try {
        String sql = " DELETE FROM cpidatamanage WHERE cpiid=?";
        Object[]values= {13};
        int i=utils.executeUpdate(sql, values);
        if (i>0) {
            System.out.print("删除指定项成功");
        }else {
            System.out.print("删除指定项失败");
        }
    }catch (Exception e) {
        e.printStackTrace();
    }
}

}

学习心得:

今天学习了封装,在昨天学习的对数据库的增删改查的基础上,为了让整个编程过程更加的简单易于操作,而进行了思考;通过对函数进行封装处理,在需要用到的时候可以直接调用,从而简化编程的步骤,这样既可以降低操作的繁琐度,也可以减少出错的频率;还知道了Alt+shift+L和Alt+/这两个非常好用的快捷键组合,并且在今天的学习中,还了解到客户端、服务端、数据库之间关系以及操作实现的基本思路和原理;想学好这一科只有多思考多练习。

标签

评论

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1