关于URL编码的经验。

来源:互联网 发布:ubuntu nodejs 编辑:程序博客网 时间:2024/06/05 08:28

java.net.URLEncoder.encode("中文或者english或者其它字符","UTF-8");

java.net.URLDecoder.decode(inputvalue, "UTF-8");
这两个类怎么用,其他文章已经写的很多,我不复述了。

 

在编码方面。很多人会碰到各种乱码问题。手段很多。但有些很麻烦也不怎么管用。

 

一般来说,jsp文件需要utf-8编码格式,页面需要设定

<%@ page language="java" pageEncoding="UTF-8"%>

框架只需配置好URL编码方式。例如struts.xml内 <constant name="struts.i18n.encoding" value="UTF-8"/>相当于调用HttpServletRequest的setCharacterEncoding方法

 

那么其他地方不需要任何设置以及解码。直接取得值,即可准确无误!

 

但这时候还有一个地方需要解决,就是容器内设定URL传参编码。

需要在Tomcat/conf/server.xml 内找到<Connector port="80" 

在其中加入URIEncoding="utf-8"

 

那么永远不用再受乱码干扰了。

 

当时没有设定容器内URL传参编码,总是取得中文是??。测试了很多方式,都无效。最终找到这个方法。

 

至于为什么必须还要在容器内设定URL传参编码,深入理解暂时未去深究。日后再看看参考文章。

原创粉丝点击