Gson的使用,对于不需要html escape的情况的处理-阿里云开发者社区

开发者社区> 大数据> 正文
登录阅读全文

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,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
大数据
使用钉钉扫一扫加入圈子
+ 订阅

大数据计算实践乐园,近距离学习前沿技术

其他文章
最新文章
相关文章