因为是后端的项目,我这边使用swaggerUI作为接口测试
引入swagger和hutool的依赖
<dependency> <groupId>com.spring4all</groupId> <artifactId>swagger-spring-boot-starter</artifactId> <version>${swagger.version}</version> </dependency> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>${hutool.version}</version> </dependency>
编写代码,我这边使用的是DDD领域模型,代码目录结构如下
接口层传入参数,调用应用层方法,返回后组装成dto
@Slf4j @ApiOperation("流程定义接口层") @RestController @RequestMapping("processDefinition") public class ProcessDefinitionController { @Resource private ProcessDefinitionApplicationService processDefinitionApplicationService; @ApiOperation(value = "查询流程定义", httpMethod = "POST") @PostMapping("list") public ResultDTO<ProcessDefinitionDTO> list(@RequestParam(value = "processDefinitionKey", required = false) String processDefinitionKey, @RequestParam(value = "processDefinitionName", required = false) String processDefinitionName){ ResultDTO<ProcessDefinitionDTO> resultDTO = new ResultDTO<>(ReturnCode.SUCCESS, "查询成功"); List<ProcessDefinition> list = processDefinitionApplicationService.list(processDefinitionKey, processDefinitionName); if(CollUtil.isEmpty(list)){ return new ResultDTO<>(ReturnCode.FAIL,"查询无数据"); } resultDTO.setDataList(ProcessDefinitionAssembler.convertToProcessDefinitionDTO(list)); return resultDTO; } }
应用层调用flowable的api进行模糊查询
@Service public class ProcessDefinitionApplicationService { @Resource private RepositoryService repositoryService; public List<ProcessDefinition> list(String processDefinitionKey, String processDefinitionName) { ProcessDefinitionQuery processDefinitionQuery = repositoryService.createProcessDefinitionQuery(); if(StrUtil.isNotBlank(processDefinitionKey)){ processDefinitionQuery.processDefinitionKeyLike(processDefinitionKey); } if(StrUtil.isNotBlank(processDefinitionName)){ processDefinitionQuery.processDefinitionNameLike(processDefinitionName); } return processDefinitionQuery.list(); } }
启动项目,浏览器输入 http://localhost:8888/swagger-ui.html 即可打开swagger页面,可以看到刚写的ProcessDefinitionController
点开ProcessDefinitionController,可以看到下面的方法,输入参数,点击execute即可进行方法调用
可以看到返回的数据是我们刚刚新建的流程定义
至此,说明接口调用成功。
本文暂时没有评论,来添加一个吧(●'◡'●)