簡體   English   中英

使用Fillo在Excel中更新單元格時,getiing錯誤為“ NullPointerException”

[英]When updating Cell in Excel using Fillo , getiing error as “NullPointerException”

我正在使用下面的代碼,我已經檢查了路徑名和工作表名稱都很好。 我正在使用fillo版本fillo-1.15。

public class T_Test {
    public static void main(String[] args) throws Exception{
        try {
            com.codoid.products.fillo.Fillo fil_res = new com.codoid.products.fillo.Fillo();
            com.codoid.products.fillo.Connection con_res = fil_res
                    .getConnection("C:\\Users\\admin\\workspace\\Good Connect\\Test_Data/Result\\LifePlanner_Result.xlsx");
            String sql_res = "update Result_Data SET Product_ID = 'Sampoorna Raksha' Where TestCase_ID = 'TC1_SIS' ";
            System.out.println(sql_res);
            com.codoid.products.fillo.Recordset recordset_rec = con_res.executeQuery(sql_res);
            con_res.close();
        } catch (Exception e) {
            System.out.println("Exception result set:" + e.toString());
        }
    }
}

錯誤如下:

java.lang.NullPointerException異常結果集:com.codoid.products.parser.SelectQueryParser.isWherePresent(com.codoid.products.fills.Select.getRecordset(Select.java :)處的java.lang.NullPointerException 47)在com.codoid.products.fillo.Connection.executeQuery(Connection.java:56)在GoodSolutionAgence.T_Test.main(T_Test.java:89)

我相信錯誤在這里:

       com.codoid.products.fillo.Recordset recordset_rec = con_res.executeQuery(sql_res);

您正在執行UPDATE 語句 ,而不是SELECT 查詢 UPDATE語句不會返回記錄集,而只會返回其更新的行數。 因此,您要使用executeUpdate代替executeQuery

       int numberOfRowsUpdated = con_res.executeUpdate(sql_res);

但是,Fillo庫至少可以警告您使用了錯誤的方法。 在我看來,它引發了NullPointerException這個事實是該庫中的一個錯誤:它應該更好地處理此錯誤情況。

當您嘗試引用尚未初始化的變量時,將發生空指針異常

 com.codoid.products.fillo.Connection con_res = fil_res
                    .getConnection("C:\\Users\\admin\\workspace\\Good Connect\\Test_Data/Result\\LifePlanner_Result.xlsx");

在這種情況下,con_res可能為null,因為getConnection方法無法正常運行。

現在,當您嘗試執行

con_res.executeQuery(sql_res);

結果為空指針異常。

檢查con_res是否正確初始化,並檢查getConnection方法中指定的路徑

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM