
- Swagger2
io.springfox springfox-swagger22.9.2
- Swagger Ui
添加扫描io.springfox springfox-swagger-ui2.9.2
@EnableSwagger2访问SwaggerUI
localhost:8080/SwaggerUi.htmlSwageer 配置
@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 = "是否隐藏")
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)