Gson的使用,對于不需要html escape的情況的處理

引入:

雖然是小問題,但是我還是需要記錄下,我們知道,Google提供了一個Gson框架讓我們高效的吧普通對象(一般VO為佳) 和json字符串之間進行互轉。因為轉換多數是和瀏覽器打交道的,所以一般默認的Gson會把html escape轉義,但是某些特殊的字段,比如說,我們有一個authToken,它是base64 encoding 的,這個時候,我們就需要保留它的原始值(后面有0個或者個或者2個等號=,而不能把這個值url escape.


解決:

遇到這種情況,我們就不能用默認的Gson了,而是要新建一個GsonBuilder,并且讓這個GsonBuilder禁用html escape的功能,然后用它創造出來的Gson進行轉換,就可以達到我們的目的了。


實例如下:


假設我們有一個VO:

095342478.png

它包含一個字段并且是不準轉義的,我們必須保留這個原始內容(base64 encoding后的內容)。


我們寫一段程序來測試:

095540689.png


測試結果如下:

095732217.png

結論:

從這里可以看出,默認的Gson是會進行html escape的,它會吧最后的”=“號轉為\u003d的形式,而我們如果用GsonBuilder,并且disableHtmlEscaping之后,讓其創建一個Gson,再用這個Gson轉換時,結果就不會被html escape.





本文轉自 charles_wang888 51CTO博客,原文鏈接:http://blog.51cto.com/supercharles888/1302450,如需轉載請自行聯系原作者

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/540328.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/540328.shtml
英文地址,請注明出處:http://en.pswp.cn/news/540328.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[轉載] Java 重寫paint繪圖

參考鏈接: 用Java重寫Override 感謝原文:https://zhidao.baidu.com/question/260060153.html 這個方法需要注意的地方不多,也就是重寫時,先調用 super.paint(g) 方法 paint方法不需要編寫代碼調用,只需要重寫。 其他…

教你如何進入有密碼的 XP 系統(下)

自動登錄時禁用Shift鍵 當使用自動登錄功能時,用戶可通過按住Shift鍵忽略登錄進程,輸入其他用戶名及密碼進入電腦。該技巧可以禁用自動登錄時的Shift鍵功能。操作步驟如下:打開“注冊表編輯器”,找到[HKEY_LOCAL_MACHINE\Softwar…

[轉載] 2020最新Java面試題,常見面試題及答案匯總

參考鏈接: Java程序的輸出| 18(重寫Override) 發現網上很多Java面試題都沒有答案,所以花了很長時間搜集整理出來了這套Java面試題大全,希望對大家有幫助哈~ 博主已將以下這些面試題整理成了一個Java面試手冊,是PDF版的。 關注…

【心隨筆】敘述你成功完成一件事情的方法

一、situation 先描述你曾經處于的困難狀況 二、task / target 說一說你是怎樣做出打算的 三、action / attitude 告訴別人你做出的行動 四、result 最后獲得了怎樣的成績轉載于:https://www.cnblogs.com/tnxlvlxy/p/7806142.html

[轉載] java排序compareTo:降序輸出學生成績

參考鏈接: Java程序的輸出| 18(重寫Override) 一道簡單程序題: 編寫一個程序,輸入學生的姓名、分數信息,要求程序按照成績降序排序后并輸出。 實現方法有很多 方法一 public class ScoreSort2 { private String name; pr…

300GB*6 SCSI RAID5 LINUX服務器數據恢復手記

[摘要]某數碼沖印網站,采用DELL POWEREDGE2850服務器,存儲部分由6塊300G硬盤組成RAID5,LINUX平臺,1.5T邏輯磁盤中只包含一個卷,文件系統為EXT3,存儲所有客戶數碼照片,服務器的故障導致整個公司無…

[轉載] public static void main(String[] args) 隱含了什么?

參考鏈接&#xff1a; 了解Java中“ public static void main”中的“ static” public class TestSort { public static void main(String[] args) { // 需要分別用Javac和Java命令行編譯和運行 int[] arr; int temp 0; arr new int [9]; for (int i 0; i < arr.length…

在C#中創建DataTable

經常遇到對DataTable進行各種運算&#xff0c;這方面的資料經常散落在各處&#xff0c;使用起來不方面&#xff0c;我想還是把他們集中到博客中&#xff0c;下次要用到的時候可以直接查看。下面是創建一個空白的DataTable&#xff0c;并定義相關的字段&#xff1a;DataTable dt…

[轉載] Java中的靜態方法不能被子類重寫

參考鏈接&#xff1a; 可以在Java中重載或重寫靜態方法嗎 Java中的靜態方法不能被子類重寫 特點&#xff1a;靜態方法屬于類的方法&#xff0c;也屬于對象的方法&#xff0c;但是靜態方法隨類的存在。 結論&#xff1a;Java中的靜態方法不能被子類重寫&#xff0c;實際上&…

2015-03-19 create php alternative for myslq_result in mysqli(PHP)--PDO Tutorial for Mysql Developers

來源&#xff1a;http://www.bestwebframeworks.com/tutorials/php/152/create-php-alternative-for-mysql_result-in-mysqli/ 內容&#xff1a; If you are migrating from PHP 5.5 to a newer version of PHP - you might be interested in a MySQL to MySQLi/PDO migration …

[轉載] [OpenGL] shadow mapping(實時陰影映射)

參考鏈接&#xff1a; Java中靜態函數的陰影(方法隱藏) 轉載原創&#xff1a;ZJU_fish1996 http://blog.csdn.net/zju_fish1996/article/details/51932954 source:原文地址 code:點擊可以直接下載源代碼 1978年&#xff0c;Lance Williams在其發表的論文《Casting cur…

[轉載] java synchronized靜態同步方法與非靜態同步方法,同步語句塊

參考鏈接&#xff1a; Java中的靜態方法與實例方法 java synchronized靜態同步方法與非靜態同步方法&#xff0c;同步語句塊 并發編程 線程同步 靜態方法鎖 非靜態方法鎖 同步塊 進行多線程編程&#xff0c;同步控制是非常重要的&#xff0c;而同步控制就涉及到了鎖。 對代…

SpringBoot安裝和創建簡單的Web應用

SpringBoot安裝 方式一&#xff1a; Eclipese->Help->Eclipse Marketplace ->Finde STS -> Install 注意&#xff1a;安裝過程中挺慢&#xff0c;而且可能會報錯&#xff0c;報錯時需要重復以上步驟&#xff08;重新安裝STS后&#xff0c;安裝進度接之前的繼續進行…

[轉載] JAVA 堆棧 堆 方法區 靜態區 final static 內存分配 詳解

參考鏈接&#xff1a; 在Java中為靜態最終static final變量分配值 轉載來源&#xff1a;https://blog.csdn.net/peterwin1987/article/details/7571808 Java棧與堆 堆:順序隨意 棧:后進先出(Last-in/First-Out). Java的堆是一個運行時數據區,類的對象從中分配空間。這些…

android學習之-Style樣式的定義

這個例子主要是寫了配置文件&#xff0c;main.xml <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android" android:orientation"vertical" android:lay…

[轉載] JAVA泛型雜談--擦除,協變,逆變,通配符等

參考鏈接&#xff1a; Java中的協變返回類型 在《JAVA核心思想》這本書里&#xff0c;關于泛型的章節意外的很多&#xff0c;小小的泛型里其實有很多可以學習的內容&#xff0c;我總結下最近看書的成果。 一. 泛型的好處和應用 最基礎的用到泛型的地方無非是在容器里 使用…

ASP.NET Session 詳解

[ASP.NET] Session 詳解 開發者在線 Builder.com.cn 更新時間:2008-03-23作者&#xff1a;黑暗凝聚力量&#xff0c;墮落方能自由 來源:CSDN 本文關鍵詞&#xff1a; Web開發 ASP session 詳解 本文僅代表作者個人觀點&#xff0c;正確與否請讀者自行研究&#xff01;閱讀本文…

[轉載] java給對象中的包裝類設置默認值

參考鏈接&#xff1a; Java中的對象類Object 處理方法如下 主要適用于&#xff0c;對象中使用了包裝類&#xff0c;但是不能給null需要有默認值的情況 /** * 處理對象中包裝類&#xff0c;因為快捷簽沒有用包裝類 * * param object 對象 */ public static void handlePara…

hadoop namenode管理元數據機制

一、簡要namenode管理元數據機制&#xff1a; 二、詳細namenode管理元數據機制&#xff1a; 三、secondary namenode 合并edits和fsimage&#xff1a; 四、namenode存儲元數據細節&#xff1a; 五、checkpoint觸發點&#xff1a; 本文轉自lzf0530377451CTO博客&#xff0c;原文…

[轉載] 多線程詳解java.util.concurrent

參考鏈接&#xff1a; java.lang.Object的靈活性 一、多線程 1、操作系統有兩個容易混淆的概念&#xff0c;進程和線程。 進程&#xff1a;一個計算機程序的運行實例&#xff0c;包含了需要執行的指令&#xff1b;有自己的獨立地址空間&#xff0c;包含程序內容和數據&#…