主要内容:
〇、项目结构
一、创建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调试接口