假设我的控制器类中有一个post方法来创建商品,并且我想显示201的状态,即通过邮递员访问api时创建的状态。 这可以通过以下两种方法实现: @ResponseStatus(HttpStatus.CREATED)和响应实体。我想知道两者之间的区别。我把它们放进了**。
@PostMapping("/offers")
**//@ResponseStatus(HttpStatus.CREATED)**
public ResponseEntity<Object> createOffer(@Valid @RequestBody Offer offer) {
Offer uoffer = offerService.createOffer(offer);
URI location = ServletUriComponentsBuilder.fromCurrentRequest().path("/{jobTitle}").
buildAndExpand(uoffer.getJobTitle()).toUri();
**return ResponseEntity.created(location).build();**
}
答案 0 :(得分:0)
使用@ResponseStatus(HttpStatus.CREATED)
您只能获得状态201。
但是使用ResponseEntity可以在不同情况下返回不同的状态。