日期:2014-05-18  浏览次数:20684 次

这个问题该如何解决呢?
代码1:
ResultSet   rst=select.getResult( "select   *   from   CustomInfo   where   id= "+id);  
if(rst.next()){
......
}
执行这段代码的时候系统说if(rst.next())这条语句是操作空指针,为解决该问题,将代码1改为
ResultSet   rst=select.getResult( "select   *   from   CustomInfo   where   id= "+id);  
//防止空指针操作
if   (rst.wasNull()){
out.println( "对不起!数据库无此记录 ");
        return;
}
if(rst.next()){。。。。。}
执行时候系统又说if   (rst.wasNull())这句话是空指针操作.这到底是什么问题?如何才能避免空指针的问题呢?请各位赐教!

------解决方案--------------------

if (rst.wasNull())
改成
if (rst == null)
------解决方案--------------------
你的重点更应该放到select.getResult( "select * from CustomInfo where id= "+id); 上。
确保这条语句执行完成之后能得到ResultSet,这样后面使用next()方法时才是正确的,而且应该加上异常处理。