swagger

swagger,第1张

swagger 引入依赖
  • Swagger2

    io.springfox
    springfox-swagger2
    2.9.2

  • Swagger Ui

    io.springfox
    springfox-swagger-ui
    2.9.2

添加扫描
@EnableSwagger2
访问SwaggerUI
localhost:8080/SwaggerUi.html
Swageer 配置
@Configuration
public class SwaggerConfiguration{
    
    @Bean
    public Docket docket(){
        Docker docker = new Docket(documentationType.SWAGGER_2);
        //API帮助文档的帮助信息
        ApiInfo apiInfo = 
            new ApiInfoBuilder()
            	.contact(
            		new Contact(
                        "文档名字",//发布者企业名称
                        "网址",//文档发布者的网站地址企业网站
                        "email"//文档发布者的电子邮箱
                    )
        		)
            	.title("名称")//文档的标题
            	.descripiton("描述")//文档的表述
            	.version("1.1")//版本
            	.build();//构建器模式创建对象
        //给docker上下文配置api描述信息
        docker.apiInfo(apiInfo);
        docker.select()//获取选择器
              	   .apis(Predicates.not(RequestHandleSelectors.withMethodAnnotation(MyAnnotation4Swagger)))
            //(Predicates.not 取反 RequestHandleSelectors.withMethodAnnotation 当方法上有注解的时候返回true
            	  .apis(RequestHandlerSelecrors.basePackage(""));//设定扫描那个包包
        		  .paths(PathSelectors.regex("/swagger/.*"))//使用正则表达式,约束生成文档的路径地址
        		
        return docker;
    }
}
自定义注解不生成文档
@Target(ElementType.METHOD,ElementType.TYPE)//目标 描述当前的注解可以定义在什么资源上
@Retention("RententionPolicy.RUNTIME")//当前注解在什么时候有效
public @interface MyAnnotation4Swagger{
    String value() default "",
}
常用自带注解
@Api(tags={"MyColler","Swagger学习控制器"},description="描述") //tage起别名 description 添加表述信息

@ApiOperation(value="描述" notes="标记")//给方法添加描述和标记

@ApiParam(name="参数名称",value="描述") //修饰方法和参数

@ApiIgnor() //修饰方法 类型 忽略当前描述的方法和类不生产api

@ApiImplicitParam(name = "m",value = "m参数描述") //描述参数

@ApiImplicitParams( value = {
    @ApiImplicitParam(name = "m",value = "m参数描述") //描述参数
    @ApiImplicitParam(name = "n",value = "n参数描述") //描述参数
	}) //描述参数

@ApiModel(value="自定义实体-MyEntity",description="MyEntity") //ApiModel - 描述一个实体类型。这个实体类型如果成为任何一个生成api帮助文档的返回值类型的时候,此注解被解析。

@ApiModeProperty(value = "参数名",name = "描述",required="是否必要",example="实例",hidden = "是否隐藏")

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5433718.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存