先图片后代码
第一步:在pom.xml文件上添加Swagger依赖

<!--Swagger API获取的包--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.8.0</version> </dependency> <!--Swagger 官方给出的一个ui界面,这个界面可以自定义,默认是官方的--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.8.0</version> </dependency> <!--Swagger 测试数据以JSON格式返回的依赖包--> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId> <version>1.9.13</version> </dependency>
第二步:配置Swagger
新建Swagger配置类,特别注意图片标红的地方是扫描你接口的包名,这是扫描注解的配置,即你的API接口位置,对前端提供服务接口的位置。
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket createRestApi() {// 创建API基本信息
List<springfox.documentation.service.Parameter> pars = new ArrayList<>();
ParameterBuilder ticketPar = new ParameterBuilder();
ticketPar.name("token").description("user token")
.modelRef(new ModelRef("string")).parameterType("header")
.required(false).build(); //header中的token参数非必填,传空也可以
pars.add(ticketPar.build()); //根据每个方法名也知道当前方法在设置
// ticketPar = new ParameterBuilder();
ticketPar.name("source").description("user source ")
.modelRef(new ModelRef("string")).parameterType("header")
.required(false).build(); //header中的source参数非必填,传空也可以
pars.add(ticketPar.build()); //根据每个方法名也知道当前方法在设置
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("com.aaa.controller"))// 扫描该包下的所有需要在Swagger中展示的API,@ApiIgnore注解标注的除外
.paths(PathSelectors.any())
.build().globalOperationParameters(pars);
}
private ApiInfo apiInfo() {// 创建API的基本信息,这些信息会在Swagger UI中进行显示
return new ApiInfoBuilder()
.title("开发接口API文档")// API 标题
.description("<h4>更新日志</h4>")// API描述
.contact("ZHL")// 联系人
.version("v1.0")// 版本号
.build();
}
}
第三步:编辑Controller层

@RestController
@Api(value = "登录控制器")
public class LoginController {
@GetMapping("/test")
@ApiOperation(value = "查询班级", notes = "根据名称查询班级中的学生")
@ApiImplicitParams({
@ApiImplicitParam(paramType = "query", name = "name", value = "学生名1", required = true, dataType = "String", example = "大朱"),
@ApiImplicitParam(paramType = "query", name = "name2", value = "学生名2", required = true, dataType = "String", example = "小朱"),
@ApiImplicitParam(paramType = "query", name = "name3", value = "学生名3", required = true, dataType = "String", example = "小熊")
})
public Object queryS(String name, String name2, String name3) {
return null;
}
}
第四步:在application.yml添加Swagger的path(json的访问request mapping.可以自定义,防止与自身代码冲突)
API doc的显示路由是:http://localhost:8081/swagger-ui.html 这是我自己的端口

springfox:
documentation:
swagger:
v2:
path: /api-docs
第五步:启动Springboot查看效果
http://localhost:8081/swagger-ui.html
