1、新建一个springboot项目(或者其他项目也行)
项目结构:
2、在pox文件导入依赖:
<依赖性> <的groupId> io.springfox </的groupId> <artifactId的> springfox-swagger2 </ artifactId的> <版本> 2.9。2 </版本> </依赖性> <依赖性> <的groupId> io.springfox </的groupId> <artifactId的> springfox-招摇-UI </ artifactId的> <版本> 2.9。2 </版本> </依赖性>
3、编写配置类
@Configuration//加入容器 @EnableSwagger2//开启swagger2功能 public class SwaggerConfig { /** * 创建API应用 * apiInfo() 增加API相关信息 * 通过select()函数返回一个ApiSelectorBuilder实例,用来控制哪些接口暴露给Swagger来展现, * 本例采用指定扫描的包路径来定义指定要建立API的目录。 * * @返回 */ @豆 public Docket createRestApi(){ return new Docket(DocumentationType.SWAGGER_2) //通过调用自定义方法apiInfo,获得文档的主要信息 .apiInfo(apiInfo()) 。选择() .apis(RequestHandlerSelectors.any())//扫描所有 .paths(PathSelectors.any()) 。建立(); } 私人ApiInfo apiInfo(){ 返回 新的ApiInfoBuilder() .title("使用Swagger2 ") //接口管理文档首页显示 .description("Swagger使用演示")//API的描述 .termsOfServiceUrl("url")//网站url等 .version("1.0") 。建立(); } }
4、在controller类或者实体类添加接口注解
注解解释:
- @Api()用于类;
表示标识这个类是swagger的资源
- @ApiOperation()用于方法;
表示一个http请求的操作
- @ApiParam()用于方法,参数,字段说明;
表示对参数的添加元数据(说明或是否必填等)
- @ApiModel()用于类
表示对类进行说明,用于参数用实体类接收
- @ApiModelProperty()用于方法,字段
表示对model属性的说明或者数据操作更改
- @ApiIgnore()用于类,方法,方法参数
表示这个方法或者类被忽略
- @ApiImplicitParam() 用于方法
表示单独的请求参数
- @ApiImplicitParams() 用于方法,包含多个 @ApiImplicitParam
当然还有很多,具体自己要用到在查
5、测试
访问地址:
springboot项目是:http://localhost:8080/swagger-ui.html
非springboot项目:http://localhost:端口号/项目名称/swagger-ui.html