搭在 spring 3 網路上很多教學都是使用 spring MVC 去做串接
由於公司上使用是舊版
所以找找有沒有能用的方法
最後成功來記錄一下
下載依賴
1 2 3 4 5
| <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-jersey2-jaxrs</artifactId> <version>1.5.0</version> </dependency>
|
由於我專案沒有用 maven
所以…自己想辦法抓
1
| mvn dependency:get -DgroupId=io.swagger -DartifactId=swagger-jersey2-jaxrs -Dversion=1.6.2 -Ddest=/mnt/d/mvntest
|
參考:How to simply download a JAR using Maven? - Stack Overflow
但後來發現還是不比Maven 建置專案初體驗 | 程式狂想筆記設定好 pom.xml 在執行mvn dependency:copy-dependencies
快速
配製 swagger(web.xml)
以下參照Jersey整合Swagger自动生成API文档
- 可依照源專案 servlet 還是filter 做調整
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<servlet> <servlet-name>jersey</servlet-name> <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class> <init-param> <param-name>jersey.config.server.provider.packages</param-name> <param-value>io.swagger.jaxrs.listing,com.devzeng.service.schedule.api</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jersey</servlet-name> <url-pattern>/api/*</url-pattern> </servlet-mapping>
|
- 新增swagger配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <servlet> <servlet-name>Jersey2Config</servlet-name> <servlet-class>io.swagger.jersey.config.JerseyJaxrsConfig</servlet-class> <init-param> <param-name>api.version</param-name> <param-value>1.0.0</param-value> </init-param> <init-param> <param-name>swagger.api.basepath</param-name> <param-value>http://localhost:8080/api</param-value> </init-param> <load-on-startup>2</load-on-startup> </servlet>
|
說明:
swagger.api.basepath:這個是api訪問的baseurl
配置前端 swagger UI
1 2
| git clone https://github.com/swagger-api/swagger-ui.git git checkout 2.x
|
4、配置swagger-ui
(1) 下載swagger-ui
https://github.com/swagger-api/swagger-ui
推薦使用2.x版本
(2) 拷貝dist目錄下面的文件到webroot下面
(3) 修改index.html頁面的url地址
url = “http://localhost:8080/api/swagger.json";
其他文章
Documenting RESTful Java Web Services using Swagger
1: Spring Boot 使用JSONDoc快速生成Restful API - 简书