版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Z_jingyu/article/details/77073377
jsp 页面传的String :
"[{"prodIndex":1,"catOne":"311","catOneName":"轮式拖拉机","brandId":"3","brand":"东方红","model":"LX600","njName":"轮式拖拉机 LX600 东方红","num":"2","referPrice":0,"referTotalPrice":0}]"
由于双引号会被转义:
[{"prodIndex":1,"catOne":"311","catOneName":"轮式拖拉机","brandId":"3","brand":"东方红","model":"LX600","njName":"轮式拖拉机 LX600 东方红","num":"2","referPrice":0,"referTotalPrice":0}]
这时用gson转出时会提示报错
org.springframework.web.util.NestedServletException: Request processing failed; nested exception is com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Expected ':' at line 1 column 9 path $[0]."
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872)
解决办法 使用 StringEscapeUtils 工具类 中 unescapeHtml4 方法 可以转义
String newJson = StringEscapeUtils.unescapeHtml4(jsonStr);
[
{
"prodIndex": 1,
"catOne": "311",
"catOneName": "轮式拖拉机",
"brandId": "3",
"brand": "东方红",
"model": "LX600",
"njName": "轮式拖拉机 LX600 东方红",
"num": "2",
"referPrice": "0",
"referTotalPrice": "0"
}
]
{
"prodIndex": 1,
"catOne": "311",
"catOneName": "轮式拖拉机",
"brandId": "3",
"brand": "东方红",
"model": "LX600",
"njName": "轮式拖拉机 LX600 东方红",
"num": "2",
"referPrice": "0",
"referTotalPrice": "0"
}
]