主人稍等一会喵`(*>﹏<*)

SpringMVC的注解@ResponseBody返回map中含有序列化对象时报错问题


问题描述

上代码

@ResponseBody
@RequestMapping("/result")
public Map<String, Object> Method(){    // do your work...

    Map<String, Object> resultMap = new HashMap<>();
    resultMap.put("code", 0);
    resultMap.put("data", new Object());// 序列化 new Obejct()}

会报如下错误

No serializer found for class java.lang.Object and no properties discovered to create BeanSerializer 
 (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) ) ;

意思是没有找到可用于Object的序列化器,也没有找到属性去创建BeanSerializer。

原因就是因为map里的序列化的new Object()

解决方法

其实在错误信息中已经提示了解决办法

解决方法很简单,只要在properties文件中如下配置即可

spring.jackson.serialization.FAIL_ON_EMPTY_BEANS=false

文章作者: Razuberi
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Razuberi !
评论