Java 在POST上,传递对象ID而不是完整对象
我想知道SpringBoot中是否有一种方法可以传递数组中对象的ID,然后SpringBoot将获取该数组的对象详细信息,而不是完整对象的详细信息 这对我来说是一个问题,因为要找到对象,Spring Boot似乎需要完整的对象,而在我的情况下它将不起作用 比如说Java 在POST上,传递对象ID而不是完整对象,java,spring-boot,Java,Spring Boot,我想知道SpringBoot中是否有一种方法可以传递数组中对象的ID,然后SpringBoot将获取该数组的对象详细信息,而不是完整对象的详细信息 这对我来说是一个问题,因为要找到对象,Spring Boot似乎需要完整的对象,而在我的情况下它将不起作用 比如说 { "request": [ "e77d8168-4217-43c9-a6dd-fb54957d1302" ] } 而不是必须通过 { "reques
{
"request": [
"e77d8168-4217-43c9-a6dd-fb54957d1302"
]
}
而不是必须通过
{
"request": [
{
"uuid": "e77d8168-4217-43c9-a6dd-fb54957d1302",
"name": "Object 1"
}
]
}
对。问题可能出在用于映射
列表的类上。它必须与您的json匹配。您的控制器应类似于:
@RestController
public class IdsController {
@PostMapping("endpoint")
public void postIds(@RequestBody IdRequest idRequest){
idRequest.getRequest().forEach(System.out::println);
}
}
和请求对象:
public class IdRequest {
private List<String> request;
public List<String> getRequest() {
return request;
}
}
公共类IdRequest{
私人名单请求;
公共列表getRequest(){
返回请求;
}
}
是的,当然可以。你为什么不能?它只是JSON,您可以传递任何您想要的内容。只需确保创建一个与JSON结构匹配的类,以便能够自动将其映射到对象。