亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

無法在 Spring Boot 中反序列化嵌套對象“Role”

無法在 Spring Boot 中反序列化嵌套對象“Role”

慕容森 2022-07-06 17:20:17
我是 Spring Boot 的新手。嘗試從具有相關角色的員工集合中獲取所有文檔。當嘗試使用“findAll()”方法從 mongo 存儲庫中獲取所有員工文檔時,我得到空角色,如下面的輸出所示。Note : Roles are associated with each employee in MongoDB.REST 調用的輸出[    {        "id": 0,        "name": null,        "organization": null,        "email": null,        "password": null,        "roles": null,        "enabled": false,        "skills": null    },    {        "id": 123,        "name": "Harry",        "organization": "Hollywood",        "email": "[email protected]",        "password": "HarryMovie",        "roles": [],        "enabled": true,        "skills": [            "Performer",            "Entertainer",            "Actor",            "Producer"        ]    },    {        "id": 1902,        "name": "Harry",        "organization": "Hollywood",        "email": "[email protected]",        "password": "HarryMovie",        "roles": [],        "enabled": true,        "skills": [            "Performer",            "Entertainer",            "Actor",            "Producer"        ]    }]員工類package com.app.TestSecurityApp.Pojo;import org.springframework.data.annotation.Id;import org.springframework.data.mongodb.core.mapping.DBRef;import org.springframework.data.mongodb.core.mapping.Document;import java.io.Serializable;import java.util.List;import java.util.Set;@Document(collection="employee")public class Employee implements Serializable {    @Id    private int id;    private String name;    private String organization;    private String email;    private String password;    @DBRef    private List<Role> roles;    private boolean enabled;    private List <String> skills;    public Employee() {    }    public List <Role> getRoles() {        return roles;    }    public void setRoles(List <Role> roles) {        this.roles = roles;    }    public boolean isEnabled() {        return enabled;    }    public void setEnabled(boolean enabled) {        this.enabled = enabled;    }
查看完整描述

1 回答

?
九州編程

TA貢獻1785條經驗 獲得超4個贊

它沒有正確序列化,因為它沒有實現標記接口。更改public class Rolepublic class Role implements Serializable。

也不需要@DBRef,它用于將父級和子級作為單獨的文檔與引用一起存儲在數據庫中。向所有類添加序列化,使文檔嵌入。


查看完整回答
反對 回復 2022-07-06
  • 1 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號