目前表现层增删改方法返回true或者false表示是否成功,getById()方法返回一个json对象,getAll()方法返回一个json对象数组,这里就出现了三种格式的响应结果,极其不利于前端解析。
需要统一响应结果的格式
package com.zhang.controller;import lombok.*;@Data//这个注解的作用是生成类的setget方法以及toString方法
@AllArgsConstructor//生成这个类的全参构造器
@RequiredArgsConstructor//生成这个类的指定参数的构造器,与@NonNull搭配使用
@NoArgsConstructor//生成这个类的无参构造器public class ResponseResults {@NonNull//作用在属性上,指定该属性为构造器的一个参数private Integer code;//描述统一格式中的数据@NonNullprivate Object data; //描述统一格式中的编码,用于区分操作private String message;//描述统一格式中的消息,可选属性}
package com.zhang.controller;public class Code {public static final Integer ADD_OK = 20021;//增加成功public static final Integer DEL_OK = 20031;//删除成功public static final Integer UPT_OK=20041;//修改成功public static final Integer SEL_OK = 20011;//查询成功public static final Integer ADD_FAIL = 20000;//增加失败public static final Integer DEL_FAIL = 20010;//删除失败public static final Integer UPT_FAIL = 20020;//修改失败public static final Integer SEL_FAIL = 20030;//查询失败}
@RestController
@RequestMapping("/books")
public class BookController {@Autowiredprivate BookService bookService;/*** 查一个*/@GetMapping("getAll/{id}")public ResponseResults queryById(@PathVariable("id") Integer id){Book book = bookService.queryById(id);Integer code = book != null ? Code.SEL_OK : Code.SEL_FAIL;String msg = book != null ? "" : "数据查询失败,请重试!";return new ResponseResults(code,book,msg);}......
}