What is the best way to return different types of ResponseEntity in Spring MVC or Spring-Boot

后端 未结 12 1485
南旧
南旧 2020-12-07 09:15

I have written simple rest application using Spring MVC 4 (or Spring-Boot). Within the controller I have return ResponseEntity. But in some cases I want to give

12条回答
  •  独厮守ぢ
    2020-12-07 09:25

    Here is a way that I would do it:

    public ResponseEntity < ? extends BaseResponse > message(@PathVariable String player) { //REST Endpoint.
    
     try {
      Integer.parseInt(player);
      return new ResponseEntity < ErrorResponse > (new ErrorResponse("111", "player is not found"), HttpStatus.BAD_REQUEST);
     } catch (Exception e) {
    
    
     }
     Message msg = new Message(player, "Hello " + player);
     return new ResponseEntity < Message > (msg, HttpStatus.OK);
    
    }
    
    @RequestMapping(value = "/getAll/{player}", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
    public ResponseEntity < List < ? extends BaseResponse >> messageAll(@PathVariable String player) { //REST Endpoint.
    
     try {
      Integer.parseInt(player);
      List < ErrorResponse > errs = new ArrayList < ErrorResponse > ();
      errs.add(new ErrorResponse("111", "player is not found"));
      return new ResponseEntity < List < ? extends BaseResponse >> (errs, HttpStatus.BAD_REQUEST);
     } catch (Exception e) {
    
    
     }
     Message msg = new Message(player, "Hello " + player);
     List < Message > msgList = new ArrayList < Message > ();
     msgList.add(msg);
     return new ResponseEntity < List < ? extends BaseResponse >> (msgList, HttpStatus.OK);
    
    }
    

提交回复
热议问题