SpringMVC和Swagger整合方法
描述
Swagger 是一個(gè)規(guī)范和完整的框架,用于生成、描述、調(diào)用和可視化 RESTful 風(fēng)格的 Web 服務(wù)。
總體目標(biāo)是使客戶端和文件系統(tǒng)作為服務(wù)器以同樣的速度來(lái)更新。文件的方法、參數(shù)和模型緊密集成到服務(wù)器端的代碼,允許 API 來(lái)始終保持同步。Swagger 讓部署管理和使用功能強(qiáng)大的 API 從未如此簡(jiǎn)單。
配置
1、引入相關(guān)jar包:
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.7.0</version> </dependency>
2、創(chuàng)建java配置類
@Configuration @EnableSwagger2 public class Swagger2 { private ApiInfo apiInfo() { return new ApiInfoBuilder() // 文檔標(biāo)題 .title("wish") // 文檔描述 .description("https://github.com/handexing").termsOfServiceUrl("https://github.com/handexing") .version("v1") .build(); } @Bean public Docket createRestApi() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .select() // 指定controller存放的目錄路徑 .apis(RequestHandlerSelectors.basePackage("com.wish.controller")) .paths(PathSelectors.any()) .build(); } }
3、編寫接口文檔測(cè)試
@RequestMapping(value = "testSawgger", method = RequestMethod.POST, produces = "application/json; charset=utf-8") @ApiOperation(value = "測(cè)試swagger", httpMethod = "POST", notes = "testSawgger") public ExecuteResult<Boolean> addUser(@ApiParam(value = "參數(shù)", required = true) Long id) { ExecuteResult<Boolean> result = new ExecuteResult<Boolean>(); try { result.setSuccess(true); } catch (Exception e) { result.setSuccess(false); } return result; }
說(shuō)明:
@ApiOperation:用在方法之上
1、value: 表示接口名稱
2、notes: 表示接口詳細(xì)描述
3、httpMethod:表示接口請(qǐng)求方法類型
@ApiParam:用在方法參數(shù)上
1、required:表示參數(shù)是否必須傳
2、name:表示參數(shù)名稱
3、value:表示參數(shù)描述
測(cè)試
swagger2文檔的默認(rèn)地址是 /swagger-ui.html, 本地開發(fā)的訪問http://localhost:8080/swagger-ui.html就可以看到自動(dòng)生成的文檔了
結(jié)語(yǔ)
到這就配置好了,最終demo可查看 源碼地址
總結(jié)
以上所述是小編給大家介紹的SpringMVC和Swagger整合方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- springMVC利用FastJson接口返回json數(shù)據(jù)相關(guān)配置詳解
- springmvc fastjson 反序列化時(shí)間格式化方法(推薦)
- 詳解在springmvc中解決FastJson循環(huán)引用的問題
- Spring MVC集成springfox-swagger2構(gòu)建restful API的方法詳解
- SpringMVC集成Swagger實(shí)例代碼
- Spring MVC利用Swagger2如何構(gòu)建動(dòng)態(tài)RESTful API詳解
- SpringMVC如何在生產(chǎn)環(huán)境禁用Swagger的方法
- SpringMVC 中配置 Swagger 插件的教程(分享)
- Spring MVC+FastJson+Swagger集成的完整實(shí)例教程
相關(guān)文章
java實(shí)現(xiàn)頁(yè)面多查詢條件必選的統(tǒng)一處理思路
這篇文章主要為大家介紹了java實(shí)現(xiàn)頁(yè)面多查詢條件必選的統(tǒng)一處理思路詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06Java詳細(xì)講解不同版本的接口語(yǔ)法和抽象類與接口的區(qū)別
對(duì)于面向?qū)ο缶幊虂?lái)說(shuō),抽象是它的一大特征之一,在?Java?中可以通過兩種形式來(lái)體現(xiàn)OOP的抽象:接口和抽象類,下面這篇文章主要給大家介紹了關(guān)于Java入門基礎(chǔ)之抽象類與接口的相關(guān)資料,需要的朋友可以參考下2022-04-04Spring使用Configuration注解管理bean的方式詳解
在Spring的世界里,Configuration注解就像是一位細(xì)心的園丁,它的主要職責(zé)是在這個(gè)繁花似錦的園子里,幫助我們聲明和管理各種各樣的bean,本文給大家介紹了在Spring中如何優(yōu)雅地管理你的bean,需要的朋友可以參考下2024-05-05Spring AOP有多少個(gè)通知以及它們的執(zhí)行順序介紹
這篇文章主要介紹了Spring AOP有多少個(gè)通知以及它們的執(zhí)行順序,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11SpringBoot集成drools的實(shí)現(xiàn)示例
本文主要介紹了SpringBoot集成drools的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05Java使用RedisTemplate操作Redis遇到的坑
這篇文章主要介紹了Java使用RedisTemplate操作Redis遇到的坑,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12