关于将对象转成JSON格式的一些问题

1.问题现象:

在ssm项目中,一个controller返回Msg对象(自定义Javabean对象),然后利用SpringMVC的@ResponseBody注解自动将Msg对象转化成JSON格式,返回给客户端,但是客户端接收到的json字符串只有code和msg属性,map属性消失了。这是为什么?

补充:
1.Msg对象包含三个属性,int code;String msg;HashMap map;
2.我的map集合里面放了一个键值对是这样的:key="furnList",value=furnList。furnList是一个list集合,包含的对象类型是Furn
3.Furn是自定义Javabean,包含的属性有
private Integer id;
private String name;
private String maker;
private BigDecimal price;
private Integer sales;
private Integer stock;

关于将对象转成JSON格式的一些问题_第1张图片

关于将对象转成JSON格式的一些问题_第2张图片

2.询问过程:关于将对象转成JSON格式的一些问题_第3张图片

3.找出问题所在

原因是在Msg对象中没有给map属性设置get和set方法,导致map属性 序列化失败
 

4.总结:

要想转成json格式,需要所有属性都是可序列化的(属性的属性也包括在内),即确保每个属性都有对应的get和set方法。

你可能感兴趣的:(json,json)