首先我们创建一个 SpringBoot 项目 然后导入maven 依赖
<!-- starter Swagger2 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<!-- end Swagger2 -->
Swagger2的配置
@Configuration
@EnableSwagger2// 开启 swagger2
public class SwaggerConfig {
@Bean
public Docket initDocket() {
List list = new ArrayList<>();
list.add(new ParameterBuilder()// 创建一个参数构建器对象
.name("token")// 参数名字
.modelRef(new ModelRef("String"))// 所传参数的类型
.parameterType("query")// 请求方式
.required(false)// 是否必传
.build());
return new Docket(DocumentationType.SWAGGER_2)
// 组名
.groupName("测试组")
// 是否开启 Swagger
.enable(true)
// 查询
.select()
// 扫描那些包
.apis(RequestHandlerSelectors.any())
// 过滤那些路径
.paths(PathSelectors.any())
.build()
// 全局参数设置 传递集合
.globalOperationParameters(list)
.apiInfo(initApiInfo());
}
@Bean
public ApiInfo initApiInfo() {
ApiInfo apiInfo = new ApiInfoBuilder()
// 大标题
.title("Swagger")
// 小标题
.description("swagger2")
// 详细信息
.termsOfServiceUrl("没有服务条款")
// 作者
.contact(new Contact("czl", "", ""))
// 版本
.version("1.0")
.build();
return apiInfo;
}
}
Controller的设置
@Api 注解放在controller上的描述这个controller类是干什么的。
@ApiOperation注解 放在你的接口上 描述这个接口是干什么的。
@ApiModel 这个注解是放在实体类上的 但是要配合lomok的@Data注解使用
@ApiModelProperty(value = “字段描述”, required = true)是否必要
然后启动你的项目在浏览器输入:
http://localhost:你的端口号/swagger-ui.html
下面是效果
笔者在这里没有去写那个bean对象的东西有兴趣的可以自己试试很简单的。有问题的希望指出。笔者好改正。