在前后分离的时候,后台会接受前台传来的不同类型的参数,后台需要继承多种数据的类去承接,这就是VO类,他里面可以包含某些类或者某些成员变量以及他们的get set方法,直接上例子:
public class TongJivo {
private Material material;
private Integer currentPage;
private Integer pageSize;
public Material getMaterial() {
return material;
}
public void setMaterial(Material material) {
this.material = material;
}
public Integer getCurrentPage() {
return currentPage;
}
public void setCurrentPage(Integer currentPage) {
this.currentPage = currentPage;
}
public Integer getPageSize() {
return pageSize;
}
public void setPageSize(Integer pageSize) {
this.pageSize = pageSize;
}
}
比如这个我前台传来的数据包含着一个Material类的对象,以及分页的参数(由于使用uniapp的前端调用接口时候不会把分页参数放入url里面所以我就这么办了)
后端Controller层这么来用,需要什么就get什么,进行相应的后台查询
@PostMapping("/tongji")
public ResultJson tongji(@RequestBody TongJivo tongJivo, HttpServletRequest req) {
String token = req.getHeader("token").toString();
if (redisTokenUtil.has(token)) {
Material material=tongJivo.getMaterial();
if(material.getPinIds().length != 0){
Long[] pinIds = material.getPinIds();
material.setPinleiId(pinIds[0]);
material.setPinmuId(pinIds[1]);
}
material.setIsSelect(null);
// material.setIsAll(1);
IPage<Material> pageList = materialService.findList(material, new Page<>(tongJivo.getCurrentPage(),tongJivo.getPageSize()));
return ResultJson.ok(pageList);
} else {
return ResultJson.failure(ResultCode.UNAUTHORIZED);
}
记得加@RequestBody注解 !!