前后端分离--VO类的使用

在前后分离的时候,后台会接受前台传来的不同类型的参数,后台需要继承多种数据的类去承接,这就是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 pageList = materialService.findList(material, new Page<>(tongJivo.getCurrentPage(),tongJivo.getPageSize()));
            return ResultJson.ok(pageList);

        } else {
            return ResultJson.failure(ResultCode.UNAUTHORIZED);
        }

记得加@RequestBody注解 !!

你可能感兴趣的:(java)