0

ここでたくさんのガイドを見ました。

if (!res.next())

ステートメントが空かどうかを確認する必要がありますが、実行するとこのエラーが発生します

org.apache.jasper.JasperException: An exception occurred processing JSP page /irasyti.jsp at line 73

70:     String rezervbusena=""; // rezervo busenos info
71:     String uzsakymas="";    // uzsakymas info
72:     
73:     if( !res.next()){ //jei kambariai neuzimti
74:         try {

何が悪いのかわかりません。多分私はいくつかのユーティリティをインポートする必要がありますか?:/ 私のコード:

    ResultSet res = null;
    Statement stmt = null;
        try {
            stmt = connection.createStatement();
            //res=stmt.executeQuery
            String tas=("SELECT * from table");  
            res=stmt.executeQuery(tas);
            out.println("<br>tas: "+tas + "<br>");
        }catch(Exception ex){
            out.println("Klaida skaityme: "+ex);    
        }

    if( !res.next()){ //jei kambariai neuzimti
            try {}
               catch(Exception ex){
            out.println("error: "+ex);
        }
}

エラーはres結果セットがnullであり、mysqlが空のステートメントを返した後もnullのままであるため、最初にnullかどうかを確認する必要がありましたif(res!=null)

yuoさん、回答ありがとうございます

4

2 に答える 2

1

次のコードを試して、エラーが発生していないかどうかを確認できますか?

ResultSet res = null;
    Statement stmt = null;
        try {
            stmt = connection.createStatement();                        
            //res=stmt.executeQuery
            String tas=("SELECT * from table");  
            res=stmt.executeQuery(tas);
            out.println("<br>tas: "+tas + "<br>");       

    if(res.next()){ //jei kambariai neuzimti

            out.println("rs value "+rs.getString(1);
        }
}
catch(Exception e){
e.printStackTrace();
}
于 2012-08-25T03:15:32.033 に答える
0

発生した例外に注意してください。ただし、ここにいくつかの説明/ヒントがあります。

まず、 JSPでJavaコードを記述しましたが、これは良い習慣とは見なされていません

次に、フェッチされた行データがある場合、メソッドboolean ResultSet.next()は戻ります。それ以外の場合は戻ります。truefalse

最後に、java.sqlパッケージにあるJDBC APIクラスなので、このパッケージをインポートするか、パッケージ名と一緒にクラス/インターフェイスを使用します-java.sql.Connectionなど。

于 2012-08-25T03:46:26.830 に答える