springmvc+swagger2整合
整合的過程中遇到了一些問題,特此記錄。
問題一:springmvc中使用fastJsonHttpMessageConverter導致swagger2 解析json失敗若果換成mappingJackson2HttpMessageConverter就沒事兒了,但是感覺fastjson效能更好一些,所以就得硬著頭皮解決swagger2與fastjson相容的問題。網上有很多解決方案,無非就是說換最高版本的fastjson就好了,但是我換了最新版的fastjson還是不行,不知道為什麼,所以只能按照網上說的方法,來嘍,大概意思就是自定義一個fastjson轉換器。上程式碼
FastJsonHttpMessageConverterEx
SwaggerJsonSerializerpackage core.swagger; import springfox.documentation.spring.web.json.Json; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; public class FastJsonHttpMessageConverterEx extends FastJsonHttpMessageConverter { public FastJsonHttpMessageConverterEx() { super(); this.getFastJsonConfig().getSerializeConfig().put(Json.class, SwaggerJsonSerializer.instance); } }
springmvc配置檔案package core.swagger; import java.io.IOException; import java.lang.reflect.Type; import springfox.documentation.spring.web.json.Json; import com.alibaba.fastjson.parser.DefaultJSONParser; import com.alibaba.fastjson.parser.deserializer.ObjectDeserializer; import com.alibaba.fastjson.serializer.JSONSerializer; import com.alibaba.fastjson.serializer.ObjectSerializer; import com.alibaba.fastjson.serializer.SerializeWriter; public class SwaggerJsonSerializer implements ObjectSerializer, ObjectDeserializer { public final static SwaggerJsonSerializer instance = new SwaggerJsonSerializer(); @Override public void write(JSONSerializer serializer, Object object, Object fieldName, Type fieldType, int features) throws IOException { SerializeWriter out = serializer.getWriter(); Json json = (Json) object; out.write(json.value()); } @Override public <T> T deserialze(DefaultJSONParser parser, Type type, Object fieldName) { return null; } @Override public int getFastMatchToken() { return 0; } }
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean id="fastJsonHttpMessageConverter" class="core.swagger.FastJsonHttpMessageConverterEx">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
<property name="features">
<array value-type="com.alibaba.fastjson.serializer.SerializerFeature">
<value>DisableCircularReferenceDetect</value>
<value>WriteMapNullValue</value>
<value>WriteNullNumberAsZero</value>
<value>WriteNullStringAsEmpty</value>
<value>WriteNullListAsEmpty</value>
<value>WriteNullBooleanAsFalse</value>
</array>
</property>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
成功解決問題
問題二:用springmvc寫了一個登入攔截器,swagger2的所有請求都攔截了,由於swagger2是引入的jar包,所以跟了下程式碼,配置了一下攔截器
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**" />
<mvc:exclude-mapping path="/webjars/**" />
<mvc:exclude-mapping path="/swagger-resources/**" />
<mvc:exclude-mapping path="/v2/**" />
<bean class="interceptor.UserSecurityInterceptor">
<property name="excludedUrls">
<list>
<value>/tbuser/noUser</value>
<value>/tbuser/login</value>
<value>/swagger-ui.html</value>
</list>
</property>
</bean>
</mvc:interceptor>
</mvc:interceptors>
成功解決問題
相關推薦
springmvc+swagger2整合
整合的過程中遇到了一些問題,特此記錄。 問題一:springmvc中使用fastJsonHttpMessageConverter導致swagger2 解析json失敗若果換成mappingJackson2HttpMessageConverter就沒事兒了,但是感覺fastj
SpringMVC與Springfox(Swagger2)整合詳解以及涉及的問題處理
Swagger 是一個規範和完整的框架,用於生成、描述、呼叫和視覺化 RESTful 風格的 Web 服務。總體目標是使客戶端和檔案系統作為伺服器以同樣的速度來更新。檔案的方法,引數和模型緊密整合到伺服器端的程式碼,允許API來始終保持同步
springmvc 與 springfox-swagger2整合
一、pom.xml引入基於maven的swagger依賴 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-sw
swagger2整合springMvc生成線上API
在現在的開發中,前後端分離開發越來越明顯,也越來越重要,但是後臺開發人員在開發完介面之後給前端人員或者APP端呼叫,而前端人員或者APP端對介面的作用以及介面中的引數往往不懂,這樣雙方不得不多次溝通交流,很浪費時間。於是就需要一箇中間的工具來無縫連線後臺與前端。 這個中間工
springmvc與swagger2整合
由於springboot整合swagger2非常簡單,現在springmvc在實際的專案當中非常多,所以有必要說一下springmvc和swagger2的整合,網上參照的資料非常多,大致都說的是一樣的,多次測試才成功;swagger優點:一個檔案就是一個文件只針對API,而不
Spring-SpringMVC-Mybatis整合的步驟
read oot exceptio img gda gif force system 緩存 1.導入jar包 1.1 spring面向切面jar包 com.springsource.net.sf.cglib-2.2.0.jar com.spring
Spring4+SpringMVC+Hibernate4整合入門與實例
type 解析 .class -m .config ise pri generated driver 配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:
SSM springmvc mybatis 整合 bootstrap maven shiro druid ehcache SSM框架源碼
微信開發 springmvc mybatis java 公眾平臺 官網 http://www.fhadmin.org/ A 調用攝像頭拍照,自定義裁剪編輯頭像,頭像圖片色度調節 B 集成代碼生成器 [正反雙向](單表、主表、明細表、樹形表,快速開發利器)+快速表單構建器 fre
spring+springmvc+mybatis整合
聲明 參數 stdout 加載 strong 相關 version pts check 搭建ssm框架,我們要分幾步進行,把每個配置文件分開寫,這樣看上去一目了然,有利於後期的修改維護,對自己也可以記請每一步的內容和步驟,方便記憶 一.spring-dao.xml 二.jd
Spring+SpringMVC+hibernate整合開發
exp mvc margin tar e30 fio ilb fc14 h264 被瘟謎謫逼戲溫次蔡蒙磊疤回http://shequ.docin.com/vpe32249 空私錘氖園掠覆痔瓜傅殖http://jz.docin.com/gqsn83067 境噬栽品新嗚趙德
SpringMVC學習(四)——Spring、MyBatis和SpringMVC的整合
creat .com www. dispatch cte scanner scan fault framework 本文我再來講SpringMVC和MyBatis整合開發的方法,這樣的話,Spring、MyBatis和SpringMVC三大框架的整合開發我們就學會了。這裏我
springmvc+dubbo整合學習
mysql數據庫 rac 讀寫分離 watermark 雙重驗證 辦公 客戶端 服務端 一個 框架簡介--主要定位於互聯網企業架構,已內置企業信息化系統的基礎功能和高效的代碼生成工具,包括:系統權限組件、數據權限組件、數據字典組件、核心工具 組件、視圖操作組件、工作流組件組
springMVC swagger2
extc ces doc opera .com tde 需要 .get 配置文件 參考地址:https://www.cnblogs.com/exmyth/p/7183753.html 1. maven 依賴 <dependency> <g
Spring4+SpringMVC+MyBatis整合思路
容器 getc lte nal 自定義 object eof supported instance 本文主要簡單講解框架整合的思路。1、Spring框架的搭建 這個很簡單,只需要web容器中註冊org.springframework.web.context.ContextL
Spring Boot之Swagger2整合
一、Swagger2簡單介紹 Swagger2,它可以輕鬆的整合到Spring Boot中,並與Spring MVC程式配合組織出強大RESTful API文件。它既可以減少我們建立文件的工作量,同時說明內容又整合入實現程式碼中,讓維護文件和修改程式碼整合為一體,可以讓我們在修改程式碼邏輯的同時方便的修
springboot+swagger2整合
新增pom依賴 <!--swagger2 start--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</
Swagger2整合springBoot,自動生成API介面文件
Swagger2整合springBoot 首先匯入jar包 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swa
基於swagger進行介面文件的編寫 Maven + SpringMVC專案整合Swagger
0. 前言 近期忙於和各個銀行的代收介面聯調,根據遇到的問題,對之前編寫的介面進行了修改,需求收集和設計介面時想到了方方面面,生產環境下還是會遇到意想不到的問題,好在基本的執行邏輯已確定,因此只是對介面進行了一些微調,但是收錢無小事,之前在程式碼編寫時對引數進行了很多的校驗,程式碼修改之後一個引數的對不上都
springmvc實現整合mybatis實現簡單的讀取資料
我這裡使用的是Mapper動態代理開發,另外使用了逆向工程,為我建立實體類和mapper介面呢mapper對映檔案 1,配置web.xml,配置spring監聽器,springmvc的servlet和對請求的攔截 2,配置springmvc.xml,開啟註解,配置包掃描,配置檢視解析器
spring,springmvc,mybatits整合例項--後臺分頁查詢
spring,springmvc,mybatits整合例項–後臺分頁查詢 這裡給出一個ssm整合後臺分頁查詢的例項。 後臺分頁使用了pageHelp這個後臺分頁,前端分頁按鈕使用jPaginate這個js外掛。 pageHelp:一個大牛寫的後端資料庫分頁的jar包: htt