也是很久没写博客了,觉得一个程序员要想进步,还是要多搞技术研究,写些博客分享技术,同时也能加深记忆,毕竟好记性不如烂笔头,好了鸡汤就不多说了。
最近写一些接口开发的小demo的时候,又接触了fastjson,在使用JSON.toJSONString(Object object)以及JSONObject.toJSONString(Object object)方法转换对象成json字符串的时候,发现对象为空的属性将不会显示,而在业务中,会需要显示出来。
怎么办呢,通过查阅网络了解到,可以另一个重载的方法,toJSONString(Object object, SerializerFeature... features),可以看到,这个方法包含不固定参数,SerializerFeature是一个枚举类型,包含了多种方案,比如writeNullStringAsEmpty即当string属性值为空时显示为“”,包装类型属性为空时显示null。代码如下:
@Test
public void test() {
Book book = new Book();
book.setId(1);
String bookjson = JSONObject.toJSONString(book, SerializerFeature.WriteNullStringAsEmpty, SerializerFeature.WriteNullBooleanAsFalse);
System.out.println(bookjson);
}
-------------------------------------------------------------------------------时间线2017年9月23日---------------------------
以后有新的心得再接在后面写