之前一直在项目中使用的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"})注解也去掉。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐