我是靠谱客的博主 生动饼干,最近开发中收集的这篇文章主要介绍js提交java后台,双引号转义为&;quot;解决办法……StringEscapeUtils.unescapeHtml4完美解决,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

          • 一、 问题现象:
            • 1.1. 前台数据
            • 1.2.后台数据
          • 二、 解决方案:
            • 2.1. maven依赖
            • 2.2. 关键代码
            • 2.3. 去空格处理

一、 问题现象:
1.1. 前台数据
ryTask.serchData('000000INC20200830000001','2020-10-01','2020-10-21','Project','LSubmitInfo','INC')
1.2.后台数据
ryTask.serchData('000000INC20200830000001','2020-10-01','2020-10-21','Project','LSubmitInfo','INC')

前台json放入form表单文本框提交,
怎么到后台我的双引号"就变了,"
左括号变成了(
右括号变成了)
单引号变成了'

二、 解决方案:
2.1. maven依赖
  <!--解决前台传递参数转译问题-->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.9</version>
        </dependency>

但是,commons-lang3中的StringEscapeUtils过期了,用下面的依赖代替即可

   <!--解决前台传递到后台参数特殊字符转译工具-->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-text</artifactId>
            <version>1.1</version>
        </dependency>

2.2. 关键代码
//将接收到的jsonStr处理一次,就OK了
String newJson = StringEscapeUtils.unescapeHtml4(jsonStr);
2.3. 去空格处理

前台传递过来的数据居然每个参数之间多了空格

 public static void main(String[] args) {
        String str = "ryTask.serchData& #40;& #39;000000INC20200830000001& #39;,& #39; 2020-10-01& #39;,& #39; 2020-10-21& #39;,& #39;Project& #39;,& #39;LSubmitInfo& #39;,& #39;INC& #39;& #41;";
        String replace = str.replace(" ", "");
        System.out.println(replace);
        System.out.println(StringEscapeUtils.unescapeHtml4(replace));
        // System.out.println(StringEscapeUtils.unescapeHtml4("&#40;&#41;"));
    }

最后利用java的StringEscapeUtils.unescapeHtml4,成功解决问题

最后

以上就是生动饼干为你收集整理的js提交java后台,双引号转义为&;quot;解决办法……StringEscapeUtils.unescapeHtml4完美解决的全部内容,希望文章能够帮你解决js提交java后台,双引号转义为&;quot;解决办法……StringEscapeUtils.unescapeHtml4完美解决所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部