springboot整合Swagger2
一、maven项目万古不变的依赖引入
<!--swagger 依赖--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>${swagger-version}</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>${swagger-version}</version> </dependency>
二、创建一个config类,用来启动swagger,代码如下:
@Configuration @EnableSwagger2 public class SwaggerConfig { @Bean public Docket api(){ return new Docket(DocumentationType.SWAGGER_2) .apiInfo(this.apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage("com.zplatformApi.api")) --需要扫描的包 .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo(){ @SuppressWarnings("deprecation") ApiInfo info=new ApiInfo( "程序接口文档", "程序接口文档", "1.0", "urn:tos", "zplatform", "Apache 2.0", "http://www.apache.org/licenses/LICENSE-2.0"); return info; } }
三、在需要测试的接口上,通常是controller方法上配上注解,代码如下:
@Api(tags = "测试接口")
@RestController
@RequestMapping("/api/test")
public class ApiTestController {
private static final Logger LOGGER = LoggerFactory.getLogger(ApiTestController.class);
@Autowired
private ApiUserService userService;
/**
* 获取用户信息
*/
@RequestMapping(value = "userInfo",method = RequestMethod.GET)
public R userInfo(@LoginUser UserVo user) {
return R.ok().put("user", user);
}
/**
* 忽略Token验证测试
*/
@RequestMapping(value = "notToken",method = RequestMethod.GET)
public R notToken() {
return R.ok().put("msg", "无需token也能访问。。。");
}
/**
* 根据手机号查询用户信息接口测试方法
*
* @param mobile
* @return
*/
@RequestMapping(value = "userListByMobile",method = RequestMethod.GET)
public R userList(String mobile) {
UserVo userEntity = userService.queryByMobile(mobile);
return R.ok().put("dto", userEntity);
}
}
四、启动项目,浏览器请求http://localhost:8888/swagger-ui.html,出现如下界面
五、可以逐个点开API,在下面界面中填入需要的参数进行测试,会在本页面下方显示测试结果,截图空间有限所以这里看不到