一个帖子请求进行多次更新

时间:2020-05-09 07:28:28

标签: spring-boot rest

    public User save(User user) #function for add user in list
{
    users.add(user);
    return user;
}

映射帖子请求

@PostMapping("/users") 
    public ResponseEntity<Object> createUser(@RequestBody User user)
    {
        User savdUser= service.save(user);

        URI location=ServletUriComponentsBuilder.fromCurrentRequest().path("/{id}").buildAndExpand(savdUser.getId()).toUri();

        return ResponseEntity.created(location).build();
    }

}

,但应一次发布请求就此多个数据提出建议

[{
"id":7,
"name":"aptech",
"birthDate":"2020-05-08T10:09:07.799+00:00"

},
{
"id":7,
"name":"aptech",
"birthDate":"2020-05-08T10:09:07.799+00:00"

}]

这是错误,建议我java函数从发布请求中获取多个用户

{
    "timestamp": "2020-05-09T07:06:46.212+00:00",
    "status": 400,
    "error": "Bad Request",

1 个答案:

答案 0 :(得分:0)

您需要创建一种方法来获取用户列表作为资源 可能是这样的

@PostMapping("/users/bulk") 
    public List<User> createUser(@RequestBody List<User> users)
    {
        for(User user : users){
          User savdUser= service.save(user);
          URI location=ServletUriComponentsBuilder.newInstance().scheme("http").host("localhost").port(8080).path("/users/{id}").buildAndExpand(savdUser.getId()).toUri();
          List<User> savedUsers;
          savedUsers.add((User) ResponseEntity.created(location).build().getBody();
        }

        return savedUsers;
    }