先後端分離:前端
1.前端--前端控制層、視圖層java
2.後端--後端控制層、服務層、數據訪問層spring
3.前端在沒有API的狀況下,能夠完美的運行。前端負責展示,後端負責數據後端
4.先後端相對獨立且耦合 restful
問題:mybatis
先後端集成-----CI/CDmvc
前端或者後端沒法作到「及時協商,儘早解決」最終致使集中爆發前後端分離
解決方案maven
首先定義schema,並實時跟蹤最新的API,下降集成風險 測試
swagger的做用:
1.restful API文檔在線自動更新
2.直接運行,在線測試API
3.支持多種語言(java、PHP等)
4.官網:http://swagger.io/
spring集成swagger----springfox
1.springfox-swagger2
2.springfox-swagger
項目環境:
JDK1.8
spring4.1.7
mybatis3.2.2
springMVC集成springfox-swagger2構建restful API
1.springfox-swagger2
2.springfox-swagger-ui
3.guava
4.mapstruct-jdk8
5.Jackson
-Jackson-core
-jackson-databind
-Jackson-annotations
集成步驟(maven):
在pox.xml文件中添加swagger2相關的依賴
swagger2配置類:swaggerconfig.java(官網下載)
1.@componentScan:設置swagger掃描包
2.@Enableswagger2:使swagger2生效
3.@Configuration:自動在本類上下文加載一些環境變量信息
springMVC 配置文件
1.<mvc:default-servlet-handler
2.添加指定掃描:<context:component-scan/>
API加入Swagger
1.經過在API上添加註解實現,API文檔的同步效果
2.@Api
代表可供swagger展現的接口類(用在類上面)
3.@ApiOperation
描述API方法(用在方法上面)
4.@ApiParam
單個參數描述