使用fastjson处理返回字符串中的转义符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用fastjson处理返回字符串中的转义符相关的知识,希望对你有一定的参考价值。

参考技术A 问题:

项目中使用的是FastJsonHttpMessageConverter 来格式化返回数据,在使用ueditor 自定义config 时里面包含\n等转义符,结果返回的数据中转义符没有处理掉。

解决方法:

在FastJsonHttpMessageConverter 之前加上StringHttpMessageConverter 进一步处理

使用上述配置就可以完美解决字符串未转义的问题。

如何利用fastjson将JSON格式的字符串转换为Map,再返回至前端成为js对象

//注意,这里的jsonStr是json格式的字符串,里面如果遇到双引号嵌套双引号的,一般是嵌套的双引号经过转义

//    \",假如有这样的一个场景,这些字符串里面有需要的css样式的js对象,包含属性名和属性值,还有一些html页面标签

//里面的类名也有转义后的双引号,那么在springmvc中,直接返回json字符串,会包含转义字符,并且,在

//返回的同时,会在字符串的两边自动添加上双引号,所以需要在返回之前,先将数据库中的json字符串转换为Map数据结构,

//然后servlet容器将map转换为json对象,让浏览器解析成js对象,并供前端使用

 

//如果json字符串中包含多层嵌套的场景,那么装换为map对象是一种很好的选择

//直接将目标结构的map泛型修改为<String,Object>,如果包含多层嵌套,则fastjson会自动将多层嵌套装换至Object中

String jsonStr=new String("需要的json字符串");

HashMap<String,Object> nameMap = new HashMap<String,Object>();

nameMap=JSON.parseObject(jsonStr,new TypeReference<HashMap<String,Object>>() {});

以上是关于使用fastjson处理返回字符串中的转义符的主要内容,如果未能解决你的问题,请参考以下文章

java 转义符是啥?起啥用?怎么用?

javascript 星号转义符

转义字符有都哪些?

oracle怎么将字符串中的转义符

shell通配符特殊符号与转义符

万变不离核心基础第九关——转义符的使用/使转义符失效/保持字符串原始格式