响应
小于 1 分钟
响应
@ResponseBody 注解
- 类型: 方法注解、类注解
- 位置: Controller 方法上/类上
- 作用: 将方法返回值直接响应,如果返回值类型是 实体对象/集合,将会转换为 JSON 格式响应
- 说明: @RestController = @Controller+ @ResponseBody;
封装统一响应结果 (创建 Result 类)
public class Result {
private Integer code;
private String msg;
private Object data;
public Result() {
};
public Result (Integer code, String msg, Object data) {
this.code = code;
this.msg = msg;
this.data = data;
}
public Integer getCode() { return code; }
public void setCode(Integer code) { this.code = code; }
public String getMsg() { return msg; }
public void setMsg(String msg) { this.msg = msg; }
public Object getData() { return data; }
public void setData(Object data) { this.data = data; }
public static Result success(Object data) {
return new Result(200, "success", data);
}
public static Result success() {
return new Result(200, "success", null);
}
public static Result error(String msg) {
return new Result(400, msg, null);
}
@Override
public String toString() {
return "Result{" +
"code=" + code +
", msg='" + msg + '\'' +
", data=" + data +
'}';
}
}
创建 ResponseController 类
@RestController
public class ResponseController {
@RequestMapping("/hellos")
public Result hello() {
System.out.println("hello word");
// return new Result(200, "success", "hello word");
return Result.success("hello word");
}
@RequestMapping("/getAddress")
public Result getAddress() {
Address addr = new Address();
addr.setProvince("广东");
addr.setCity("深圳");
System.out.println(addr);
return Result.success(addr);
}
@RequestMapping("/listAddr")
public Result listAddr() {
List<Address> list = new ArrayList<>();
Address addr1 = new Address();
addr1.setProvince("广东");
addr1.setCity("深圳");
Address addr2 = new Address();
addr2.setProvince("广东");
addr2.setCity("深圳");
list.add(addr1);
list.add(addr2);
return Result.success(list);
}
}
Postman 测试结果
/hellos
/getAddress
/listAddr