搜索
写经验 领红包
 > 电器

jdbc操作过程(jdbc操作中一般都需要抛出的异常是)

导语:JDBC操作对象

JDBC的操作对象可以用5个字来更好地记忆:(贾链欲执事)

DriverManager:驱动管理

Connection:连接对象

Statement:语句对象

ResultSet:结果集

closeConn:释放资源

①加载驱动

static {try(InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream(&34;)){//System.out.println(&34; + is);//把流加载到properties,就会给properties键值对p.load(is);//加载驱动try{Class.forName(p.getProperty(&34;));}catch (ClassNotFoundException e){e.printStackTrace();}} catch (Exception e) {e.printStackTrace();}}

②创建连接对象

//提供连接public static Connection getConnection() {try {conn = DriverManager.getConnection(p.getProperty(&34;),p.getProperty(&34;),p.getProperty(&34;));} catch (Exception e) {e.printStackTrace();}return conn;}

③创建语句对象

public static PreparedStatement getPstm(){  return pstm;}

④执行语句对象

//统一封装dml操作public static void executeUpdate(String sql,Object... params){conn=getConnection();try{pstm=conn.prepareStatement(sql);//判断if(params!=null&¶ms.length>0){for(int i=0;i<params.length;i++){pstm.setObject(i+1,params[i]);}}//执行语句pstm.executeUpdate();//打印执行System.out.println(&34;+pstm);}catch (SQLException e){e.printStackTrace();}}

⑤处理结果集(查询)

public static ResultSet executeQuery(String sql,Object... params){//Object... 可变形参try{//获取连接conn=getConnection();//预编译语句对象pstm=conn.prepareStatement(sql);//步数不确定,要判断if(params.length>0){for(int i=0;i<params.length;i++){//给问号设置值pstm.setObject(i+1,params[i]);}}System.out.println(&34;  + pstm);//执行查询rs=pstm.executeQuery();//返回结果集return  rs;}catch (SQLException e){e.printStackTrace();}return null;}

⑥释放资源

//释放连接public static void closeConn(Connection conn, PreparedStatement pstm, ResultSet rs) {try {if(conn != null) conn.close();}catch (Exception e) {e.printStackTrace();}}

本文内容由小若整理编辑!