spring boot集成swagger
来源:互联网 发布:长江证券for mac 编辑:程序博客网 时间:2024/05/24 05:41
1.首先需要在pom文件中加入
<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>
2.创建自己的SwaggerConfig类,在此类加上@Configuration和@EnableSwagger2俩个注解,在类中创建一个返回Docket实体的bean。如下
import com.google.common.base.Predicate;import org.springframework.boot.autoconfigure.web.BasicErrorController;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.bind.annotation.RestController;import springfox.documentation.RequestHandler;import springfox.documentation.builders.ApiInfoBuilder;import springfox.documentation.service.ApiInfo;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2;import static springfox.documentation.builders.PathSelectors.regex;@Configuration@EnableSwagger2public class SwaggerConfig { @Bean public Docket swagger(){ Predicate<RequestHandler> predicate = new Predicate<RequestHandler>() { @Override public boolean apply(RequestHandler input) { Class<?> declaringClass = input.declaringClass(); if (declaringClass == BasicErrorController.class)// 排除 return false; if(declaringClass.isAnnotationPresent(RestController.class)) // 被注解的类 return true; if(input.isAnnotatedWith(ResponseBody.class)) // 被注解的方法 return true; return false; } }; return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .useDefaultResponseMessages(false) .select() .apis(predicate) .paths(regex("/api/.*")) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("Swagger 接口")//大标题 .version("1.0")//版本 .build(); }}
3.然后在返回的实体和controller中接口加入Swagger的注解,启动服务,在浏览器输入服务的url+/swagger-ui.html,进入swagger页面测试接口。
Swagger常用注解有
1.@ApiModel 用于注解实体类,有value description parent等属性
2.@ApiModelProperty(notes = "案件编号")用于注解实体类中的属性3.@Api用于注解controller类 有value description等属性
4.@ApiOperation用于注解controller类中的接口方法, 有value和notes等属性5.@ApiParam(value = "批次号") 用于注解接口方法的参数6.@ApiImplicitParams({@ApiImplicitParam(name = "page", dataType = "integer", paramType = "query", value = "页数 (0..N)"), @ApiImplicitParam(name = "size", dataType = "integer", paramType = "query", value = "每页大小."), @ApiImplicitParam(name = "sort", allowMultiple = true, dataType = "string", paramType = "query", value = "依据什么排序: 属性名(,asc|desc). ")}) 和 @ApiIgnore Pageable pageable 合用,用于注解接口方法的实体参数。等等
0 0
- Spring Boot 集成Swagger
- Spring Boot 集成Swagger
- Spring Boot 集成Swagger
- Spring Boot 集成Swagger
- spring boot 集成 Swagger
- spring boot集成swagger
- spring boot 集成swagger
- Spring Boot集成swagger
- Spring Boot 集成Swagger
- spring boot集成 swagger
- Spring Boot 集成Swagger
- Spring boot 集成 Swagger
- Spring Boot 集成Swagger
- spring-boot集成swagger
- Spring Boot 集成Swagger
- Spring Boot 集成Swagger
- spring-boot集成swagger(接口管理工具)
- spring-boot 集成 Swagger 搭建RESTful API
- 国外大神最新发布!Xposed框架 for 安卓7.0/7.1 ,亲测可用!
- linux日志服务器审计客户端history记录
- java向下转型引用和直接实例化引用的区别
- qt QTabWidget设置tab头的宽度
- Fedora25基本配置
- spring boot集成swagger
- 经典数据结构
- CMD 命令输出保存到TXT文件
- org.apache.ibatis.reflection.ReflectionException:There is no getter for property named 'parentId' in
- unit14
- Servlet的单实例多线程
- Spring教程--入门程序
- Java多线程应用场景
- pg学习_运算符,表达式