Spring封装数据结果
POST请求JSON格式
基本数据类型
public class Demo {
private byte aByte;
private short aShort;
private int anInt;
private long aLong;
private float aFloat;
private double aDouble;
private char aChar;
private boolean aBoolean;
}
没有传键
封装时就会采用默认的数据进行封装
{}
传键但是值为空字符串
也是一样封装时采用默认的数据进行封装
{
"aByte":"",
"aShort":"",
"anInt":"",
"aLong":"",
"aFloat":"",
"aDouble":"",
"aChar":"",
"aBoolean":""
}
引用数据类型
public class Demo {
private Byte aByte;
private Short aShort;
private Integer anInt;
private Long aLong;
private Float aFloat;
private Double aDouble;
private Character aChar;
private Boolean aBoolean;
private String string;
private int[] ints;
}
没有传键
封装时都为null
{}
传键但是值为空字符串
字符串类型类型为空的字符串,数组类型为length为0的数组,其余的则都为null
{
"aByte":"",
"aShort":"",
"anInt":"",
"aLong":"",
"aFloat":"",
"aDouble":"",
"aChar":"",
"aBoolean":"",
"string":"",
"ints":[]
}
POST请求form-data形式
基本数据类型
没有传键
传键但是值为空
会报错
引用数据类型
没有传键
传键但是值为空
GET请求
基本数据类型
没有传键
传键但是值为空
会报错
引用数据类型
没有传键
传键但是值为空
总的来说对于基本数据类型的数据,如果是JSON格式传递的,键有值没有则是默认的,如果是form-data或者GET键和值必须同时存在,不然就会报错;而对于引用数据类型的数据,只有字符串类型和数组类型较为特殊,不论是数据是什么格式进行传递的,字符串类型的数据键有值没有,就会封装成空字符串,数组类型就会变为length为0的数组,而其他的引用数据类型的数据,不论是以什么形式进行传值的,只要是没有明确的值,那么就会被封装成null。