您好,登錄后才能下訂單哦!
小編給大家分享一下SpringBoot 集成 Swagger的案例,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
什么是Swagger
依賴導入
<!-- Swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.4.0</version> </dependency>
加入配置
swagger: title: 項目 API description: SpringBoot 集成 Swagger 項目 API version: 1.0 terms-of-service-url: http://www.baidu.com/ base-package: cn.anothertale.springbootshiro # 這一項指定需要生成 API 的包,一般就是 Controller contact: name: taohan url: http://www.baidu.ccom/ email: 1289747698@qq.com
建立 Swagger Config
package cn.anothertale.springbootshiro.config.swagger; import lombok.Getter; import lombok.Setter; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import springfox.documentation.builders.ApiInfoBuilder; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.service.Contact; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; /** * description: swagger 配置中心 * * @author: taohan * @date: 2019年03月20日 * @time: 16:52 */ @Getter @Setter @Configuration @EnableSwagger2 @ConditionalOnClass(EnableSwagger2.class) @ConfigurationProperties(prefix = "swagger") public class SwaggerConfig { /** * API 接口包路徑 */ private String basePackage; /** * API 頁面標題 */ private String title; /** * API 描述 */ private String description; /** * 服務條款地址 */ private String termsOfServiceUrl; /** * 版本號 */ private String version; /** * 聯系人 */ private Contact contact; @Bean public Docket api() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() .apis(RequestHandlerSelectors.basePackage(basePackage)) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title(title) .description(description) .termsOfServiceUrl(termsOfServiceUrl) .version(version) .contact(contact) .build(); } }
通過注解標明 API
Swagger 默認根據配置的包,掃描所有接口并生成對應的 API 描述和參數信息。
常用注解及對應屬性如下:
@Api (描述一個 API 類,標注在 Controller 上)
@ApiOperation (用在 Controller 方法上,說明方法的作用)
@ApiImplicitParams (用在 Controller 方法上,描述一組請求參數)
@ApiImplicitParam(描述一個請求參數)
@ApiResponses (描述一組響應)
@ApiResponse (描述一個響應)
最后,可以在瀏覽器中輸入 http://localhost:8080/swagger-ui.html 即可訪問!
以上是SpringBoot 集成 Swagger的案例的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。