在使用JDBC读取数据库中的数据,通常会遇到某个字段为空的情况,下面一段代码:
st = conn.createStatement();
rs = st.executeQuery("SELECT SZGLPT,SZSTKT,GROSSMARGIN,SZSRP9,SZSRP4 FROM BO_PMD_C WHERE BINDID = '" + processInstanceId + "'");
String grossmargin = rs.getString("GROSSMARGIN").trim();
如果直接用String类型读取“GROSSMARGIN”字段,且该字段为空的话,系统会抛出NullPointerException,此时,需要对读取的数据稍作处理:
将“String grossmargin = rs.getString("GROSSMARGIN").trim();”语句改为如下判断语句:
String grossmargin= rs.getObject("GROSSMARGIN") == null ? null : rs.getObject("GROSSMARGIN").toString().trim();
就能解决这个问题。