设计Code状态码
package com.itheima.controller;//状态码//通常是双方协议或公司规定public class Code { public static final Integer SAVE_OK = 20011; public static final Integer DELETE_OK = 20021; public static final Integer UPDATE_OK = 20031; public static final Integer GET_OK = 20041; public static final Integer SAVE_ERR = 20010; public static final Integer DELETE_ERR = 20020; public static final Integer UPDATE_ERR = 20030; public static final Integer GET_ERR = 20040;}
- 设计Result返回数据规范
package com.itheima.controller;public class Result { //描述统一格式中的数据 private Object data; //描述统一格式中的编码,用于区分操作,可以简化配置0或1表示成功失败 private Integer code; //描述统一格式中的消息,可选属性 private String msg; // 注意:我们需要提供构造方法便捷操作 public Result() { } public Result(Integer code,Object data) { this.data = data; this.code = code; } public Result(Integer code, Object data, String msg) { this.data = data; this.code = code; this.msg = msg; } public Object getData() { return data; } public void setData(Object data) { 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; }}
- 服务层返回数据更替
package com.itheima.controller;import com.itheima.domain.Book;import com.itheima.service.BookService;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.*;import java.util.List;//统一每一个控制器方法返回值@RestController@RequestMapping("/books")public class BookController { @Autowired private BookService bookService; // 我们按照Result的构造方法以及实际需求提供返回值 // 我们可以根据三目运算符来直接输出其结果 @PostMapping public Result save(@RequestBody Book book) { boolean flag = bookService.save(book); return new Result(flag ? Code.SAVE_OK:Code.SAVE_ERR,flag); } @PutMapping public Result update(@RequestBody Book book) { boolean flag = bookService.update(book); return new Result(flag ? Code.UPDATE_OK:Code.UPDATE_ERR,flag); } @DeleteMapping("/{id}") public Result delete(@PathVariable Integer id) { boolean flag = bookService.delete(id); return new Result(flag ? Code.DELETE_OK:Code.DELETE_ERR,flag); } @GetMapping("/{id}") public Result getById(@PathVariable Integer id) { Book book = bookService.getById(id); Integer code = book != null ? Code.GET_OK : Code.GET_ERR; String msg = book != null ? "" : "数据查询失败,请重试!"; return new Result(code,book,msg); } @GetMapping public Result getAll() { List<Book> bookList = bookService.getAll(); Integer code = bookList != null ? Code.GET_OK : Code.GET_ERR; String msg = bookList != null ? "" : "数据查询失败,请重试!"; return new Result(code,bookList,msg); }}
经验总结扩展阅读
-
-
-
-
-
-
-
家中若有这3星座10月贵人多多 好事连连生活再无忧愁
-
-
-
-
2023年1月24日是打水井吉日吗 2023年1月24日是打水井的黄道吉日吗
-
-
美颜 亚洲人真的适合大地色眼影吗?真正的答案可能出乎意料
-
杜江 杜江首次回应出轨,网友炸了:霍思燕你后悔了吗?
-
连衣裙|有一种“整容”叫霍尊,长发飘飘欲仙,看到短发后:早剪早火了
-
-
-
-
北辙南辕|《北辙南辕》五对情侣,五种结局:拎清“这三样”,我们会幸福
-