根据 Spring Boot 控制器中提供的 RequestParam 不同的类类型作为 RequestBody?

问题描述 投票:0回答:1

我有一个控制器,它接收请求参数和主体。根据参数的类型,请求主体可以是各种类类型。目前我在身体上使用

JsonNode
,效果很好。看起来像这样:

@PostMapping()
public ResponseEntity<Response> save(@RequestParam("request type") RequestProcess process,
                               @Valid @RequestBody JsonNode requestJson) {

我想知道是否可以根据提供的参数为主体提供类类型。如果是的话我该怎么做?

如果这在 REST 中不可能,我是否有机会使用 GraphQL 来做到这一点。我对 GraphQL 还不太了解,还在研究中。

spring-boot spring-restcontroller
1个回答
0
投票

您可以通过使用泛型来实现更接近的目标

class Controller < T > {
  @PostMapping("/save")
  ResponseEntity < Response > save(@RequestBody T requestJson) {}
}
© www.soinside.com 2019 - 2024. All rights reserved.