我有一段JSON,我想将其映射到某个POJO,但我不希望将null值与我的pojo映射。 {“ name”:null,“ age”:10}
我尝试了@JsonSerialize,@@ JsonInclude的值= Include.NON_NULL, 我正在使用JACKSON 2.7
package com.tech.kj.JacksonSample;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
public class JsonOperation {
@JsonInclude(value=Include.NON_NULL)
String name;
int age;
public EmployeeType getEmployeeType() {
return employeeType;
}
public void setEmployeeType(EmployeeType employeeType) {
this.employeeType = employeeType;
}
EmployeeType employeeType;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "JsonOperation [name=" + name + ", age=" + age + ", employeeType=" + employeeType + "]";
}
}
package com.tech.kj.JacksonSample;
import java.io.IOException;
import org.json.JSONObject;
import com.fasterxml.jackson.annotation.JsonAutoDetect.Visibility;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.fasterxml.jackson.annotation.PropertyAccessor;
import com.fasterxml.jackson.core.JsonParseException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.ObjectMapper;
/**
* Hello world!
*
*/
public class App
{
public static void main( String[] args ) throws JsonParseException, JsonMappingException, IOException
{
String data="{'name':null,'age':10}";
JSONObject jsonObject=new JSONObject(data);
ObjectMapper mapper=new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
JsonOperation jsonOperation= mapper.readValue(jsonObject.toString(), JsonOperation.class);
System.out.println(jsonOperation);
}
}
在将json的null值序列化为pojo时映射它会出现一些错误。