我在使用 toString().substring()
后遇到了 NullPointerException
错误。我需要使用这个方法。请帮帮我。我不太确定我可以在查询中使用该方法。
原创
String selectItemMasDetl="select MMITNO,MMITDS,MMALUN,MMSPUN from"+DBConnect.SCHEMA+".mitmas where MMCONO=888 and MMITNO="+ItemNo+"'";
使用ToString().substring()
String selectItemMasDetl="select MMITNO,MMITDS,MMALUN,MMSPUN from"+DBConnect.SCHEMA+".mitmas where MMCONO=888 and MMITNO="+ItemNo.toString().substring(0,4)+"'";
错误日志
java.lang.NullPointerException
[12/13/11 16:24:28:594 SGT] a6cc007 SystemErr R at com.------erp.report.stocklotsalesreport.StockLotSalesReportGet.getItemMasDetl
回答:
selectItmMas="select MMITNO,MMITDS,MMALUN,MMSPUN from "+DBConnect.SCHEMA+".mitmas where MMCONO=888 and MMITNO like '"+ salesRecordListTO.getItemNo().trim() +"%'";
我使用 like 运算符并传递参数而不是使用 trim。现在我得到了我想要的结果。 非常感谢你们。
最佳答案
这意味着至少在某些情况下 ItemNo
或 DBConnect
或 toString()
的返回值(如建议的那样)为 null
。问题是你没有堆栈跟踪,所以你不能确定错误是在哪里抛出的。它甚至可能在另一条线上,因为我们现在(不知道)。
尝试用 try
catch
包装相关行并打印堆栈跟踪,检查发生的代码行,然后再次发布到这里。方法如下:
try {
//code throwing exception
} catch (Exception ex) {
ex.printStackTrace();
}
旁注:似乎您在 from 之后需要一个空格,而且您正在关闭一个单引号,但我没有看到开口。下面,供引用,您的代码,仅重新格式化,未修复:
String selectItemMasDetl = "select MMITNO,MMITDS,MMALUN,MMSPUN from"
+ DBConnect.SCHEMA + ".mitmas where MMCONO=888 and MMITNO="
+ ItemNo.toString().substring(0,4) + "'";
关于java - 查询的 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8486404/