为了账号安全,请及时绑定邮箱和手机立即绑定

找不到类 org.hibernate.proxy.pojo.bytebuddy.

找不到类 org.hibernate.proxy.pojo.bytebuddy.

紫衣仙女 2021-10-28 09:26:15
当我尝试导航到端点时,出现以下错误类型定义错误:[简单类型,类org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor];嵌套异常是 com.fasterxml.jackson.databind.exc.InvalidDefinitionException:未找到类 org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor 的序列化程序,也未发现用于创建 BeanSerializer 的属性(为避免异常,请禁用 SerializationFeature.FAIL_ON_EMPTY_BEANS)我检查了我所有的模型,所有的属性都有 getter 和 setter。所以有什么问题 ?我可以通过添加来解决这个问题,spring.jackson.serialization.fail-on-empty-beans=false但我认为这只是一种隐藏异常的解决方法。编辑Product 模型:@Entitypublic class Product {    private int id;    private String name;    private String photo;    private double price;    private int quantity;    private Double rating;    private Provider provider;    private String description;    private List<Category> categories = new ArrayList<>();    private List<Photo> photos = new ArrayList<>();        // Getters & Setters}PagedResponse 班级 :public class PagedResponse<T> {    private List<T> content;    private int page;    private int size;    private long totalElements;    private int totalPages;    private boolean last;        // Getters & Setters}RestResponse 班级 :public class RestResponse<T> {    private String status;    private int code;    private String message;    private T result;    // Getters & Setters}在我的控制器中,我回来了 ResponseEntity<RestResponse<PagedResponse<Product>>>
查看完整描述

3 回答

?
12345678_0001

TA贡献1802条经验 获得超5个赞

我在使用 spring 存储库做教程时遇到了这个错误。原来错误是在为我的实体构建服务类的阶段发生的。


在您的 serviceImpl 类中,您可能有以下内容:


    @Override

    public YourEntityClass findYourEntityClassById(Long id) {

      return YourEntityClassRepositorie.getOne(id);

    }

将此更改为:


    @Override

    public YourEntityClass findYourEntityClassById(Long id) {

      return YourEntityClassRepositorie.findById(id).get();

    }

基本上 getOne 是一个延迟加载操作。因此,您只能获得对实体的引用(代理)。这意味着实际上没有进行数据库访问。只有当你调用它的属性时,它才会查询数据库。findByID 在您调用它时会“急切地”/立即调用它,因此您已经完全填充了实际的实体。


查看完整回答
反对 回复 2021-10-28
?
慕桂英546537

TA贡献1848条经验 获得超10个赞

将 FetchType 从懒惰更改为渴望对我来说很有效。


查看完整回答
反对 回复 2021-10-28
  • 3 回答
  • 0 关注
  • 183 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信