老师帮忙看下为什么这里用两个try catch?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | package com.imooc.jdbc.demo1; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import org.junit.Test; public class JDBCTEST { @Test public void test() { try { Class.forName( "com.mysql.cj.jdbc.Driver" ); try { Connection conn=DriverManager.getConnection( "jdbc:mysql://localhost:3306/jdbctest" , "root" , "abc" ); String sql= "select *from goods" ; Statement stmt=conn.createStatement(); ResultSet resultSet=stmt.executeQuery(sql); while (resultSet.next()) { int id =resultSet.getInt( "id" ); String name=resultSet.getString( "name" ); float price=resultSet.getFloat( "price" ); String desp=resultSet.getString( "desp" ); System.out.println(id+ " " +name+ " " +price+ " " +desp); } } catch (SQLException e) { e.printStackTrace(); } } catch (ClassNotFoundException e) { e.printStackTrace(); } } } |
0
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕阿满
2019-01-17 18:57:56
同学你好,这是同学自己写的代码吗?可以去掉一个try-catch,在catch中捕获所有异常的父类Exception。如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | @Test public void test() { try { Class.forName( "com.mysql.cj.jdbc.Driver" ); Connection conn = DriverManager.getConnection( "jdbc:mysql://localhost:3306/jdbctest" , "root" , "abc" ); String sql = "select *from goods" ; Statement stmt = conn.createStatement(); ResultSet resultSet = stmt.executeQuery(sql); while (resultSet.next()) { int id = resultSet.getInt( "id" ); String name = resultSet.getString( "name" ); float price = resultSet.getFloat( "price" ); String desp = resultSet.getString( "desp" ); System.out.println(id + " " + name + " " + price + " " + desp); } } catch (Exception e) { e.printStackTrace(); } } |
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
Java数据库开发与实战应用2018版
- 参与学习 人
- 提交作业 277 份
- 解答问题 4297 个
Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧