//第一个类
import java.math.BigDecimal;
public class Nulls {
/**
* 判断是否为空
* @param obj
* @return
*/
public static Object nullToObject(Object obj){
Object value = null;
try{
if(obj == null || "".equals(obj) || "null".equals(obj)){
if(obj instanceof Long){
value = 0L;
}else if(obj instanceof Integer){
value = 0;
}else if(obj instanceof BigDecimal){
value = 0;
}else if(obj instanceof String){
value = "";
}else if(obj instanceof Boolean){
value = false;
}
return value;
}else{
value = obj;
return value;
}
}catch(Exception e){
e.printStackTrace();
}
return value;
}
}
//第二个类
import java.math.BigDecimal;
public class User extends Nulls{
private String name;
private int age;
private BigDecimal bd;
private Boolean b;
public String getName() {
return name;
}
public void setName(String name) {
this.name = (String) nullToObject(name);
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = (int) nullToObject(age);
}
public BigDecimal getBd() {
return bd;
}
public void setBd(BigDecimal bd) {
this.bd = (BigDecimal) nullToObject(bd);
}
public Boolean getB() {
return b;
}
public void setB(Boolean b) {
this.b = (Boolean) nullToObject(b);
}
}
//第三个测试类
public class Test {
public static void main(String[] args){
User user = new User();
user.setName(new String("null"));
System.out.println("姓名:"+user.getName());
}
此方式大家可能觉得多此一举,但是要是在接收json对象时,就会比较方便。
因为在接受JSON对象时,有时候字段就是为空,不判断是否为空,就会报错。
所以通过此方法可以解决字段为空的问题。
}
JAVA处理数据接收为空时的字段报错处理
原创wx64b7a1776a746 博主文章分类:andorid知识积累 ©著作权
©著作权归作者所有:来自51CTO博客作者wx64b7a1776a746的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
java同时处理多个数据
java同时处理多个数据的三种常用方法详解,并提供了详细的代码示例。
java 抛出异常 多线程