【问题标题】:how to create a model Object with dynamic keys in Java如何在 Java 中创建具有动态键的模型对象
【发布时间】:2018-09-21 12:47:14
【问题描述】:

我有一个场景,我需要为 Json 创建一个模型对象,看起来像。

{
  "id":"12345",
  "What is the name of your first car": "a",
  "Mothers maiden name": "b",
  "Which city you are born in": "c",
}

其中关键2,3,4是动态的(不同请求不同),java中如何为此编写模型对象

【问题讨论】:

  • 好像你只想要一个哈希图。
  • 所以这将是三个哈希映射,每个密钥私有字符串标识一个;私有 Map question1 = new HashMap(); private Map question2 = new HashMap(); private Map question3 = new HashMap();
  • 一个map可以存储多个key/value对。如果这是您的要求,则每个键都不需要一个。
  • 你能发一个例子吗,这个模型对象我想用作 POST 请求的 requestBody,它似乎不起作用
  • 您是否使用任何库来反序列化您的 JSON?您可以在帖子中添加一些上下文吗?

标签: java json spring


【解决方案1】:

我认为你需要这样的东西:

@Getter @Setter @NoArgsConstructor
class Model {
    private int id;
    private List<Question> listQuestionWithPropoedAnswers;
}

@Getter @Setter @NoArgsConstructor
class Question {
    private String question;
    private List<String> proposedAnswers;
}

每个模型都有一个键和一个问题列表,每个问题都有一个问题和建议的答案。


@Getter @Setter @NoArgsConstructor,来自 lombok 项目。

【讨论】:

    猜你喜欢
    • 2011-05-10
    • 2011-09-29
    • 1970-01-01
    • 2018-12-23
    • 1970-01-01
    • 2019-10-20
    • 2011-04-12
    • 1970-01-01
    • 2022-11-28
    相关资源
    最近更新 更多