com.fasterxml.jackson.databind.JsonMappingException: No serializer found for class
在ssm整合(ssh也会出现)时返回json格式时出现对象序列化问题,这个问题困扰了博主很久,研究了一段时间,在网上也查阅了很多资料,现在总结一下
问题出现的根本原因是我是用接口注解方式去查询结果的,查询出来的结果是一个代理对象,而这个代理对象中会存在一个handler属性,这个属性是导致这个错误的根本原因。
这个问题找到了3种解决方法
1.第一种是利用配置文件方式去解决也最麻烦的一种,自定义一个mapper类继承ObjectMapper,在springmvc.xml中配置自定义的mapper类
添加的mapper类
package com.ssm.beans;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
public class MyMapper extends ObjectMapper {
public MyMapper(){
//表示着序列化对象中如果有属性没有get方法时 不抛出异常,
this.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
}
}
</