com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class报错

之前一直在项目中使用的mybatis plus,没有出现问题,这次由于项目着急,所以出现了很多不该出现的坑,特此记录!!!

1. mp的分页接口,直接报错了,如下:

com.fasterxml.jackson.databind.exc.InvalidDefinitionException:
No serializer found for class com.asyware.smartcsserve
.vo.TeamMemberMedel and no properties discovered to 
create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS)
(through reference chain: 
com.asyware.smartcsserve.vo.common.ResultVO["data"]->com.baomidou.mybatisplus.extension.plugins.pagination.Page["records"]->java.util.ArrayList[0])

网上说的是在返回的实体对象中添加

@JsonIgnoreProperties(value = { "hibernateLazyInitializer"}),可以参考:

https://blog.csdn.net/u014086054/article/details/89046847

,此时分页接口是不报错了,但是返回来的数据有问题,分页返回的total=1,但是records却是空的,最后发现是因为我返回的实体中是不完全的,有些字段没有返回来。在返回的实体中添加如下注解,即可解决问题:

//@JsonIgnoreProperties(value = { "hibernateLazyInitializer"})
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TeamMemberMedel {

记得把最开始添加的@JsonIgnoreProperties(value = { "hibernateLazyInitializer"})注解也去掉。

猜你喜欢

转载自blog.csdn.net/zhangleiyes123/article/details/105726963