解决 Servlet 乱码问题
来源:互联网 发布:匡恩网络内部融资 编辑:程序博客网 时间:2024/05/23 15:38
我们经常会遇到网页中的乱码问题,这个在确定不是前台浏览器的问题后,就很可能是我们的代码有问题了。
我们程序员身在中国,网页中传输中文是家常便饭,在我们的 Servlet 中写下如下代码是非常管用的:
1: req.setCharacterEncoding("gb2312");
2: resp.setContentType("text/html;charset=gb2312");
.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }注意:这两行代码一定要写在第一次从浏览器读取数据和第一次从服务器发出数据之前,而且这段代码只对采取 post 方式提交表单有用,get 方式提交这段代码就管不了了。
有人可能会说,我第一个读取的数据肯定不是中文,我把 req.setCharacterEncording("gb2312"); 写在我第一次读取中文数据之前不也一样吗?!结果很遗憾。你会发现你的数据要不就是英文,要不就是问号,因为浏览器传过来的数据 Servlet 是一次性全部读取的,后面的声明字符集已经晚了。所以我们一定要把上面的两句代码写在最前面,反正都是要写的哦。.csharpcode, .csharpcode pre{font-size: small;color: black;font-family: consolas, "Courier New", courier, monospace;background-color: #ffffff;/*white-space: pre;*/}.csharpcode pre { margin: 0em; }.csharpcode .rem { color: #008000; }.csharpcode .kwrd { color: #0000ff; }.csharpcode .str { color: #006080; }.csharpcode .op { color: #0000c0; }.csharpcode .preproc { color: #cc6633; }.csharpcode .asp { background-color: #ffff00; }.csharpcode .html { color: #800000; }.csharpcode .attr { color: #ff0000; }.csharpcode .alt {background-color: #f4f4f4;width: 100%;margin: 0em;}.csharpcode .lnum { color: #606060; }
关于之前说的方法为什么对 get 方法无用呢?我们也可以让其有用,需要改一个地方,改 server.xml 。打开 conf/server.xml ,找到修改端口的那个标签,改成如下即可:
1: <Connector port="80" protocol="HTTP/1.1"
2: connectionTimeout="20000"
3: redirectPort="8443" URIEncording="gb2312"/>
- 解决 Servlet 乱码问题
- 解决servlet乱码问题
- servlet解决乱码问题
- Servlet乱码问题的解决
- servlet解决乱码的问题
- Servlet解决中文乱码问题
- Servlet解决中文乱码问题
- 解决servlet中文乱码问题
- 解决Servlet的乱码问题
- 解决Servlet中乱码问题
- 解决Servlet的乱码问题
- 解决JSP&Servlet乱码问题
- servlet:解决servlet中文乱码问题
- JSP/Servlet中文乱码问题的解决
- servlet中中文乱码问题的解决
- servlet中文乱码问题及解决
- tomcat + servlet解决中文乱码问题
- Servlet及JSP解决中文乱码问题
- 获取一个序列中的不重复数据
- tlb与dll文件区别
- 在屏幕旋转时屏蔽应用重启
- 找不到命令:repo
- 程序NSIS ERROR出错解决方案
- 解决 Servlet 乱码问题
- 【Android基础】调用系统发Email和短信
- Servlet 读取 HTML 中同一 NAME 属性值的多个参数
- 如何用repo下载android源码 (转)
- Android的Window类
- 百度的搜索效果
- Servlet 中的 Cookie 、 Session 和 ServletContext
- Serearlize class : List
- SQL Server 2005 Beta 2 Transact-SQL 增强功能