public class TestMain {
public static void main(String[] args) throws JsonProcessingException {
//创建一个课表对象
LearningLesson lesson = new LearningLesson();
lesson.setId(1L);
lesson.setCourseId(2L);
lesson.setStatus(LessonStatus.EXPIRED); //课程状态,枚举类
//序列化为json
//1,用 fastjson 转换 属性值为Null的自动不处理
String fastjson = JSON.toJSONString(lesson);
System.out.println(fastjson);
//2,用jackson 转换 属性为null 默认也处理(可以配置)
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);//如果属性为Null,不处理
String jackson = objectMapper.writeValueAsString(lesson);
System.out.println(jackson);
}
}
结果:
因为课程状态用了 枚举类,中配置的有@JsonValue注解所以结果不一样: