ホームページ >Java >&#&チュートリアル >JDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理

JDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理

青灯夜游
青灯夜游オリジナル
2018-11-22 18:13:164136ブラウズ

この記事の内容は、JDBC で例外を処理する方法を紹介することです。 JDBC での例外処理。困っている友人は参考にしていただければ幸いです。

JDBC の例外処理は Java 例外処理に非常に似ていますが、JDBC の場合、処理する最も一般的な例外は java.sql.SQLException で、これは JDBC 例外の基本例外クラスです。

java.sql.SQLException 例外を使用して、JDBC が例外を処理する方法を紹介します。まず、java.sql.SQLException の関連知識を見てみましょう。

SQLException メソッド

SQLException はドライバー内で発生する可能性があり、データベース。このような例外が発生すると、SQLException 型のオブジェクトが catch 句に渡されます。

渡された SQLException オブジェクトには、例外に関する追加情報を取得するために使用できる次のメソッドがあります。

JDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理

例外処理JDBC

Exception オブジェクトによって提供される情報を利用することで、例外をキャッチし、プログラムを適切に続行できます。これは try ブロックの一般的な形式です。

try {
   // 你的危险代码在这些大括号之间!!!!
   }catch(Exception ex) {
   // 你的异常处理代码介于这些代码之间。
   
   }finally {
   // 必须始终执行这些代码
   }

Example:

次のコード例を研究して、try....catch...finally ブロックの使用法を理解してください。

//步骤1:导入必需的软件包
import java.sql.*;

public class JDBCExample {
   // JDBC 驱动程序名称和数据库URL
   static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";  
   static final String DB_URL = "jdbc:mysql://localhost/EMP";

   //  数据库的凭证
   static final String USER = "username";
   static final String PASS = "password";
   
   public static void main(String[] args) {
   Connection conn = null;
   try{
      //步骤 2: 注册JDBC驱动程序
      Class.forName("com.mysql.jdbc.Driver");

      //步骤 3: 打开连接
      System.out.println("Connecting to database...");
      conn = DriverManager.getConnection(DB_URL,USER,PASS);

      //步骤 4: 执行查询
      System.out.println("Creating statement...");
      Statement stmt = conn.createStatement();
      String sql;
      sql = "SELECT id, first, last, age FROM Employees";
      ResultSet rs = stmt.executeQuery(sql);

      //步骤 5: 从结果集中提取数据
      while(rs.next()){
         //Retrieve by column name
         int id  = rs.getInt("id");
         int age = rs.getInt("age");
         String first = rs.getString("first");
         String last = rs.getString("last");

         //显示值
         System.out.print("ID: " + id);
         System.out.print(", Age: " + age);
         System.out.print(", First: " + first);
         System.out.println(", Last: " + last);
      }
      //步骤 6: Clean-up environment
      rs.close();
      stmt.close();
      conn.close();
   }catch(SQLException se){
      //处理JDBC错误
      se.printStackTrace();
   }catch(Exception e){
      //处理Class.forName的错误
      e.printStackTrace();
   }finally{
      //使用finally块,关闭连接
      try{
         if(conn!=null)
            conn.close();
      }catch(SQLException se){
         se.printStackTrace();
      }//end finally try
   }//end try
   System.out.println("Goodbye!");
}//end main
}//end JDBCExample

ここで、上記の例を次のようにコンパイルしてみましょう:

JDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理

JDBCExample を実行すると、問題がなければ次の結果が生成されます。それ以外の場合は、対応するエラーがキャプチャされ、エラー メッセージが表示されます。

JDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理

# 間違ったデータベース名または間違ったユーザー名またはパスワードを渡して上記の例を試し、結果を確認してください。

要約: 以上がこの記事の全内容です。皆さんの学習に役立つことを願っています。

以上がJDBC で例外を処理するにはどうすればよいですか? JDBCでの例外処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。