1

Java 1.6- Oracle11g- JDBC(つまり、OJDBC6)コードでいくつかのSQLExceptionが発生しています。しかし、どのコード行が問題を引き起こしたのかわかりません。Eclipseを使用して、問題の原因となったコード行を見つけるにはどうすればよいですか?

私のコードの出力-

Running main...
Exception- java.sql.SQLSyntaxErrorException: ORA-00911: invalid character
Exiting main...

ありがとう。

PS-ここにコードを入れる必要はないと思います。どの行が原因であるかを知り、自分でコードを修正したいだけです。私はできる限り少しの追加の助けを借りようとしています。

4

2 に答える 2

2

このパターンに従っているコードがどこかにあります。

try 
    {
    ...
    }
catch (Exception err)
    {
    System.out.println("Exception- "+err);
    }

ご覧のとおり、例外のメッセージのみが報告され、例外がなくなるため、これは悪いパターンです。

( stderrerr.printStackTrace(System.out)ではなくstdoutでの出力が本当に必要な場合)、またはを使用しerr.printStackTrace()ます。 または、例外をまったくキャッチしないでください。JVMはスタックトレース全体を出力します。

スタックトレースには、クラス、メソッド、ファイル名、および行番号が含まれています。スタックトレースが出力されると、Eclipseのコンソールはファイル名と行番号をハイパーリンクに変換し、クリックするだけでソースに移動できます。

于 2012-08-08T22:31:15.680 に答える
1

メインメソッドのどこかで例外がキャッチされていると思いますか?彼らが捕まえられているところはどこでもmyException.printStackTrace()。または、デバッガーを使用してコードを実行し、行ごとに調べて、どこで失敗するかを確認します。

于 2012-08-08T22:25:19.407 に答える