Java WEB 之页面间传递特殊字符

来源:互联网 发布:工程师之戒 淘宝 编辑:程序博客网 时间:2024/06/05 07:56

本文是学习网络上的文章时的总结以及自己的一点实践,感谢大家无私的分享。

昨天在做项目的时候,有一个页面间传递特殊字符的需求,查了一些资料,现在将自己的经验写出来。

首先,在前台编码

var fckPurpose=encodeURIComponent($.trim(jQuery("#fckPurpose").val()));

encodeURIComponent、encodeURI和escape三个函数差别在于个别字符是否编码的问题。

参考:

escape()、encodeURI()、encodeURIComponent()区别详解


然后在再后台(java)对字符做处理,因为Java中有一些字符有特殊含义

fckPurpose = fckPurpose.replaceAll("%", "%25");fckPurpose = fckPurpose.replaceAll("\\+", "%2B");fckPurpose = fckPurpose.replaceAll("/", "%2F");fckPurpose = fckPurpose.replaceAll("\\?", "%3F");fckPurpose = fckPurpose.replaceAll("#", "%23");fckPurpose = fckPurpose.replaceAll("&", "%26");

特殊字符在前台的转换码,参见:URL 中“+”加号的问题

这样基本可以了

1 1
原创粉丝点击