首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java序列化子类的属性

Java序列化子类的属性
EN

Stack Overflow用户
提问于 2018-11-22 13:18:04
回答 2查看 45关注 0票数 0

我有一个Maven项目,我想在这里这样做。

代码语言:javascript
运行
复制
@RestController
@RequestMapping("/person")
public class PersonController {
  @GetMapping
  public List<Person> getPerson(){

    List<Person> persons = new ArrayList<>();

    persons.add(new Dev(1, "Java")); //Let's say I have the constructor
    persons.add(new DevOps(2, "Linux")); //Let's say I have the constructor

    return implants;
  }
}

  public class Person{ public int id;}

  public class Dev extends Person{ public string lang;}

  public class DevOps extends Person{ public string env;}

我希望结果是

[

{id : 1,lang:"Java"},//<-这是Dev

{id : 2,env:"Linux"},//<-这是DevOps

]

而不仅仅是

[

{id : 1},//<-这是Dev

{id : 2},//<-这是DevOps

]

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-22 13:37:43

试图复制你的问题,但没有成功:

代码语言:javascript
运行
复制
@RestController
@RequestMapping("/person")
public class PersonController {

    @GetMapping
    public List<Person> getPerson(){
        List<Person> persons = new ArrayList<>();

        persons.add(new Dev(1, "Java")); //Let's say I have the constructor
        persons.add(new DevOps(2, "Linux")); //Let's

        return persons;
    }
}

public class Person {
    public int id;

    public Person(int id) {
        this.id = id;
    }
}

public class Dev extends Person {
    public String lang;

    public Dev(int id, String lang) {
        super(id);
        this.lang = lang;
    }
}

public class DevOps extends Person {
    public String env;

    public DevOps(int id, String env) {
        super(id);
        this.env = env;
    }
}

结果:

代码语言:javascript
运行
复制
http://localhost:8080/person/

[{"id":1,"lang":"Java"},{"id":2,"env":"Linux"}]

你确定你把所有相关代码都贴出来了吗?既然您声明了Let's say I have the constructor,我只能假设您正确地创建了它们。

票数 1
EN

Stack Overflow用户

发布于 2018-11-22 13:49:27

我找到了解决办法,在我的现实生活中,礼仪是私密的,而我忘了创造更多的东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53431891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档