报空指针代码码如下:
public SupplierBean getExceptionSupplier(String supplierName,String supplierType,String userId){
SupplierBean supplier=supplierMapper.getExceptionSupplier(supplierType);
if(supplier==null){
supplier.setName(supplierName);
supplier.setCreditCode(supplierName);
supplier.setSupplierType(supplierType);
addBaseSupplier(supplier,userId);
}
return supplier;
}
这时候就报空指针错误,但是必须是空指针的时候才能对其进行赋值操作。因此刚开始没注意到这个问题。
代码改成如下就没问题了。
public SupplierBean getExceptionSupplier(String supplierName,String supplierType,String userId){
SupplierBean supplier=supplierMapper.getExceptionSupplier(supplierType);
if(supplier==null){
supplier = new SupplierBean();
supplier.setName(supplierName);
supplier.setCreditCode(supplierName);
supplier.setSupplierType(supplierType);
addBaseSupplier(supplier,userId);
}
return supplier;
}
本文讨论了一个导致空指针错误的Java代码片段,涉及Dao查询返回值直接进行修改的情况。当supplier为空时,试图对其赋值引发错误。解决方案是在进行赋值操作前,先检查对象是否为空,如果为空则创建新的SupplierBean实例,从而避免空指针异常。
2250

被折叠的 条评论
为什么被折叠?



