如何将所有@PostMapping 参数添加到地图?

How to add all @PostMapping parameters to a Map?

我想提供一个 POST servlet,它包含以下 JSON 内容:

{
  "name": John
  "age": 25,
  "some": "more",
  "params: "should",
  "get": "mapped"
}

其中两个属性应显式映射到定义的参数。所有其他参数应进入 Map<String, String>.

问题:如何让Spring将它们直接映射到bean的map中?

@RestController
public void MyServlet {
   @PostMapping
   public void post(@RequestBody PostBean bean) {

   }
}

public class PostBean {
   private String name;
   private String age;

   //all other json properties should go here
   private Map<String, String> map;
}
public class PostBean {
    private Map<String, String> map;

    @JsonAnyGetter
    public Map<String, String> getMap() {
        return map;
    }

    @JsonAnySetter
    public void setMap(String name, String value) {
        if (this.map == null) map = new HashMap<>();
        this.map.put(name, value);
    }
}