SpringBoot新增Swagger配置
Swagger 是一個規範和完整的框架,用於生成、描述、呼叫和視覺化 RESTful 風格的 Web 服務。 總體目標是使客戶端和檔案系統作為伺服器以同樣的速度來更新。 檔案的方法/引數/模型緊密整合到伺服器端的程式碼,允許API來始終保持同步。Swagger 讓部署管理和使用功能強大的API從未如此簡單。
1,先在pom.xml檔案裡面加入依賴
<!--配置swagger-->
<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,編寫controller,這邊我的包路徑是com.example.yuanx.controller
/**
* Created by 快樂風男 on 2018/8/23.
*/
@Api(value = "kuaile")
@RestController
public class TestController{
@ApiOperation(value="fengnan")
@GetMapping("/show")
public String show() {
return "success";
}
}
3,編寫configuration,這邊我的包路徑是com.example.yuanx.swagger
/**
* Swagger配置類.
*/
@EnableSwagger2 // Swagger的開關,表示已經啟用Swagger
@Configuration // 聲明當前配置類
public class SwaggerConfiguration {
@Value("com.example.yuanx.controller")
private String basePackage; // controller介面所在的包
@Value("快樂風男のAPI")
private String title; // 當前文件的標題
@Value("死亡如風常伴吾身")
private String description; // 當前文件的詳細描述
@Value("${swagger.version}")
private String version; // 當前文件的版本
@Bean
public Docket createRestApi() {
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)
.version(version)
.build();
}
}
4,配置properties檔案
#配置
server.port=8090
# 配置swagger
swagger.basePackage: com.example.yuanx.controller
swagger.title: 快樂風男のAPI
swagger.description: 死亡如風常伴吾身
swagger.version: V1.0
5,在頁面上訪問
訪問地址:http://localhost:埠號/專案名稱/swagger-ui.html
當然,也有很多spring boot的專案是沒有專案名稱的,http://localhost:埠號/swagger-ui.html
本專案的地址是 http://localhost:8090/swagger-ui.html