[spring boot] 04 简单demo_2 - 编写controller,vo,dto,postman调试

主要内容:

    〇、项目结构

    一、创建vo

    二、创建dto

    三、创建util

    四、创建controller

    五、postman调试

 

〇、项目结构

 

 

一、创建vo

 1.1. 新建vo包(在com.example.demo下)

 

 1.2. 在vo下新建class - ResultVO

@Data
public class ResultVO<T> {

    /** 错误码. */
    private Integer code;

    /** 提示信息. */
    private String msg = "";

    /** 具体内容. */
    private T data;

}

注:该vo为通用vo,用于接口返回的统一输出格式

 

 1.3. 在vo下新建包moduleInfo,并新建ModuleInfoDetailVO

@Data
public class ModuleInfoDetailVO {

    private Integer id;

    @JsonProperty("name")
    private String moduleName;

}

注:

@JsonProperty:用于指定response返回的key值

 

 

二、创建dto

 2.1. 新建dto包(在com.example.demo下)

 

 2.2. 在dto下,新建ByIdDTO

@Data
public class ByIdDTO {

    private Integer id;

}

注:该dto为通用dto,用于所有根据id传值的所有请求

 

 

三、创建util

 3.1. 新建util包(在com.example.demo下)

 

 3.2. 在util下新建ResultVOUtil

public class ResultVOUtil {

    public static ResultVO success(Object object) {
        ResultVO resultVO = new ResultVO();
        resultVO.setData(object);
        resultVO.setCode(0);
        resultVO.setMsg("成功");
        return resultVO;
    }

    public static ResultVO success() {
        return success(null);
    }

    public static ResultVO error(Integer code, String msg) {
        ResultVO resultVO = new ResultVO();
        resultVO.setCode(code);
        resultVO.setMsg(msg);
        return resultVO;
    }

}

 

 

四、创建controller

 4.1. 新建controller包(在com.example.demo下)

 

 4.2. 在controller下新建ModuleInfoController

@RestController
@RequestMapping("/module")
public class ModuleInfoController {

    @Autowired
    ModuleInfoService service;

    @PostMapping(path = "/detail",
            consumes = "application/json;charset=UTF-8", produces = "application/json;charset=UTF-8")
    public ResultVO detail(@RequestBody ByIdDTO byIdDTO) {
        ModuleInfo moduleInfo = service.findByModuleId(byIdDTO.getId());
        ModuleInfoDetailVO moduleInfoDetailVO = new ModuleInfoDetailVO();
        BeanUtils.copyProperties(moduleInfo, moduleInfoDetailVO);

        return ResultVOUtil.success(moduleInfoDetailVO);
    }

}

注:

@RestController:标为返回为ResponseBody的请求

@RequestMapping:设置这个contorller的访问名

@PostMapping:设置这个接口的访问名

 

 

五、postman调试

 5.1. 在application.yml中增加统一访问前缀:/api

server:
  port: 7779
  servlet:
    context-path: /api

 

 5.2. 打开postman调试接口

 

posted @ 2019-01-28 16:40  铁蛋蛋蛋不铁  阅读(2315)  评论(2编辑  收藏  举报