Swagger教程


Swagger搭建Restful接口教程一

一、前言

       Swagger 是一款RESTFUL接口的文檔在線自動生成+功能測試功能軟件,隨着現在許多公司實現了前后端分離,swagger越來越受歡迎了。

中文官網:http://www.sosoapi.com/

二、歷史版本(絕版干貨)      

         其實swagger是有兩個版本的,而且區別還挺大的,一個是swagger-ui也就是swagger1;還有一個是springfox-swagger也就是swagger2;很多人都不知道給搞混淆了,兩個版本各有各得特色,本篇博客先說swagger-ui。

三、版本一(swagger-ui)

 

 

通過輸入http://localhost:8080/項目跟路徑/dist/index.html直接可以訪問自己的頁面。

我的是http://localhost:8080/swagger_springmvc/dist/index.html#/

四、准備工作

前端html下載

  下載dist文件

  1. swagger-ui版本首先需下載HTML有兩種方式
  2. 第一種:從github上下載相關html  ,;

https://github.com/swagger-api/swagger-ui

 

 

 注意事項

如果采取第一種下載方式的話,一定要注意版本,千萬不要下載最新的版本dist否則swagger-ui是不支持的。要下載2.x版本的。

詳細地址:https://github.com/swagger-api/swagger-ui/tree/2.x/dist

個人建議還是從我的博客中下載吧,畢竟我已經都給弄好了。
Jar包下載

<!-- Swagger包 -->

          swagger-springmvc 1.0.2

          swagger-models 1.0.2

          swagger-annotations 1.3.11
<!-- JSON包 -->

          json-lib 2.4
<!-- JACKSON包 -->

          jackson-annotations 2.6.5

          jackson-databind 2.6.5

          jackson-core 2.6.5

 

 

 

 注意事項

       這些jar包的版本不能改變,如果版本改了很可能因為版本的原因而實現不了,說個最簡單的Swagger jar包 版本如果變了,很大可能就不行,這個之前博主親自試驗過。

      如果你的項目是maven項目的話,那么給的建議就是將這些jar包配到自己的maven倉庫。然后再pom文件里引入,就像我的這樣。

 

當然你也可以直接add引入,個人建議還是放在pom里比較規范。

五、代碼實現

jar包引入

        要引入的jar包(第三章)之前就說了。

前端dist文件引入

        將下載的dist文件拷貝到webapp目錄下。(我用的是myeclipse,不同的軟件名字可能不一樣)

 

 

 在dist文件夾下的index.html文件中修改url將之修改成為你項目swagger的url url命名規范是 IP+端口號+項目根路徑(如果你項目有根路徑的話)+api-docs

注意事項

        url后的 api-docs是固定的

 

 

 

 

Config配置

新建config文件夾,在文件中新建swagger.java文件,配置啟動相關信息。

 

 

 

 

 然后再配置文件中引入本文件


 

 

Controller注解

控制層可以有兩種方式展現根據大家喜好來。

方式一

 

 方式二

 

 

兩種方式都可以 看大家喜歡那種寫法。

六、成果展現訪問        

啟動項目 訪問地址

        地址是 IP + 端口號 +項目跟路徑 + / dist/index.html#/

        我的是http://localhost:8080/swagger_springmvc/dist/index.html#/ 后綴是固定的 不要改變

 

 

 Swagger搭建Restful接口教程二

一、前言

        上一章節我們說的是swagger-ui也就是swagger1,接下來我們說的是swagger升級版swagger2

        Swagger是當前最好用的Restful API文檔生成的開源項目,隨着swagger的越來越流行,原來需要有人把dist封裝成jar,與spring相關框架結合,也就成了springfox-swagger
二、歷史版本(絕版干貨)

    其實swagger是有兩個版本的,而且區別還挺大的,一個是swagger-ui也就是swagger1;還有一個是springfox-swagger也就是swagger2;很多人都不知道給搞混淆了,兩個版本各有各得特色,本章二說springfox-swagger。

三、版本二(springfox-swagger(swagger2))

效果展示

 

 

 通過輸入http://localhost:8080/項目跟路徑/swagger-ui.html直接可以訪問自己的頁面。我的是http://localhost:8080/springfox_springmvc/swagger-ui.html

         因為頁面是封裝好的,所以后綴swagger-ui.html是不變的

三、准備工作

Jar包下載

<!-- Swagger包 -->

springfox-core-2.6.1

springfox-schema-2.6.1

springfox-spi-2.6.1

springfox-spring-web-2.6.1

springfox-swagger2-2.6.1

springfox-swagger-common-2.6.1

springfox-swagger-ui-2.6.1

swagger-models-1.5.10

swagger-annotations-1.5.10

spring-plugin-metadata-1.2.0.RELEASE

spring-plugin-core-1.2.0.RELEASE

classmate-1.2.0

guava-18.0

mapstruct-1.0.0.Final

<!-- JSON包 -->

json-lib-2.4-jdk15

json-lib-2.4-sources

<!-- JACKSON包 -->

jackson-annotations 2.6.5

jackson-databind 2.6.5

jackson-core 2.6.5

 

 

 注意事項

        這些jar包的版本不能改變,如果版本改了很可能因為版本的原因而實現不了,說個最簡單的Swagger jar包 版本如果變了,很大可能就不行,這個之前博主親自試驗過。

        如果你的項目是maven項目的話,那么給的建議就是將這些jar包配到自己的maven倉庫。然后再pom文件里引入,就像我的這樣。

 

 

 

 

 

 當然你也可以直接add引入,個人建議還是放在pom里比較規范。

        以上圖片是我引入的jar 直接復制就行。

四、代碼實現

jar包引入。

        要引入的jar包(第三章)之前就說了。

Config配置

        新建config文件夾,在文件中新建SwaggerConfigFirst.java文件,配置啟動相關信息。

 

 然后再配置文件中引入本文件

 

 

 這個SwaggerConFirst類有四個注解,看名稱就可以明白是什么意思。其中,@Configuration,@EnableWebMvc和@ComponentScan是Spring的注解,而@EnableSwagger2則是用來啟動Swagger支持,表示這是一個Spring Swagger的配置文件。

     之后,定義了一個Bean方法CustomDocket,Spring中名字並不重要,重要的是它返回一個Docket類,DocumentationType.SWAGGER_2作為Docket構造方法的參數,指定了所用的swagger版本2.0,官網上已經在預告3.0版本了。而之后的apiInfo則是調用接下來的apiInfo函數,來創建Docket的信息。apiInfo函數采用ApiInfoBuilder來創建ApiInfo類。

Controller注解

控制層可以有兩種方式展現根據大家喜好來。

方式一

 

 方式二

 

 兩種方式都可以 看大家喜歡那種寫法。

五、成果展現

訪問

啟動項目 訪問地址

        地址是 IP + 端口號 +項目跟路徑 + /swagger-ui.html

       我的是http://localhost:8080/springfox_springmvc/swagger-ui.html

后綴是固定的 不要改變

 

 

 

 https://blog.csdn.net/wyb880501/article/details/79576784

https://blog.csdn.net/qq_39082353/article/details/109453310?utm_term=swagger%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E8%AF%A6%E8%A7%A3&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduweb~default-0-109453310&spm=3001.4430

https://blog.csdn.net/z591593455/article/details/107091560?utm_term=swagger%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E8%AF%A6%E8%A7%A3&utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~sobaiduweb~default-2-107091560&spm=3001.4430

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM