zoukankan      html  css  js  c++  java
  • JDBC四(web基础学习笔记十)

    一、增加 、修改、删除、查询

    将功能整合在一个类中

    package pb.base;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    
    import pb.until.ConfigManager;
    
    public class Base {
        public Connection conn;
        public PreparedStatement pstmt;
        public Statement stmt;
        public ResultSet rs;
        
        //建立连接
        public boolean getConnection(){
            // 获取DRIVER,url,用户名密码
            String driver = ConfigManager.getintance().getvalue("jdbc.driver");
            String url = ConfigManager.getintance().getvalue("jdbc.url");
            String uname = ConfigManager.getintance().getvalue("jdbc.uname");
            String pwd = ConfigManager.getintance().getvalue("jdbc.upwd");
            // (1)使用Class.forName()加载驱动
            try {
                Class.forName(driver);
                // (2)DriverManager.getConnection(URL,用户名,密码)获取数据库的连接Connection
                // Oracle连接方式jdbc:oracle:thin:@localhost:1521:orcl
                conn = DriverManager.getConnection(url, uname, pwd);
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return false;
            }catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return false;
            }
            return true;
        }
    
        //增加,修改,删除
        public int  executeUpdate(String sql,Object [] pararm){
            
            int UpdateRow=0;
            getConnection();
            try {
                pstmt=conn.prepareStatement(sql);
                //遍历数组设置每个值
                for(int i=0;i<pararm.length;i++){
                    pstmt.setObject(i+1, pararm[i]);
                }
                UpdateRow = pstmt.executeUpdate();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return UpdateRow;
        }
        
        
      //查询
        public ResultSet executeSQL(String sql,Object [] pararm){
            getConnection();
            try {
                pstmt=conn.prepareStatement(sql);
                //遍历数组设置每个值
                for(int i=0;i<pararm.length;i++){
                    pstmt.setObject(i+1, pararm[i]);
                }
                rs = pstmt.executeQuery();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return rs;
        }
        
        
        //关闭数据库连接
        public boolean CloseConnection(){
                try {
                    if(rs!=null){
                    rs.close();
                    }
                } catch (SQLException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                    return false;
                }
        
            try {
                if(stmt!=null){
                stmt.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return false;
            }
            try {
                if(pstmt!=null){
                pstmt.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return false;
            }
            try {
                if(conn!=null){
                conn.close();
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                return false;
            }
        return true;
            
        }
    }
  • 相关阅读:
    宝藏 题解
    Xorequ 题解
    2020.12.26 模拟赛 题解
    数据结构 100 题 1~10 线段树
    关于模拟退火
    诗意狗 题解
    Keyboading 思路
    体育成绩统计/ Score
    【(抄的)题解】P5686 [CSP-SJX2019]和积和
    【笔记】简单博弈
  • 原文地址:https://www.cnblogs.com/liunanjava/p/4246333.html
Copyright © 2011-2022 走看看