
首先,浏览器地址栏发送乱码:
例如:
表格维护
当tomcat用作Web服务器时,通过地址栏传递中文参数时,是为了防止浏览器出现乱码
您需要在服务器server.xml的相应端口中配置编码方法. 例如:
maxThreads =“ 150” minSpareThreads =“ 25” maxSpareThreads =“ 75”
enableLookups =“ false” redirectPort =“ 8443” acceptCount =“ 100”
debug =“ 0” connectionTimeout =“ 20000”
disableUploadTimeout =“ true” useBodyEncodingForURI =“ true” URIEncoding =“ UTF-8” />
第二,JSP页面显示乱码
以下显示页面(display.jsp)出现乱码:
out.print(“ JSP中文处理”);

%>
对于不同的WEB服务器和不同的JDK版本,处理结果是不同的. 原因: 服务器使用的编码方法与浏览器不同
对于不同的字符,结果是不同的. 解决方案: 在JSP页面(即第一页)中指定编码方法(gb2312)
添加: 在
上
行消除乱码. 整个页面如下
:
out.print(“ JSP中文处理”);
%>
三个. 中文提交表单时出现乱码
以下是提交页面(submit.jsp),代码如下:
以下是处理页面(process.jsp)的代码:

如果可以正确显示submit.jsp提交的英文字符,如果提交了汉字,则会出现乱码. 原因: 浏览器默认使用UTF
使用-8编码方法发送请求,并且在表达字符时UTF-8和GB2312编码方法不同,因此无法识别字符.
解决方案: 使用request.seCharacterEncoding(“ gb2312”)对请求进行统一编码以实现普通中文
显示. 修改后的process.jsp代码如下:
request.seCharacterEncoding(“ gb2312”);
%>
四,连接出现乱码
只要涉及中文的地方乱码,解决方法: 添加
到的URL
useUnicode = true&characterEncoding = GBK可以.
第五,的显示乱码
在mysql4.1.0中,varchar类型和文本类型会出现中文乱码. 对于varchar类型,请将其设置为二进制属性.

它可以解决中文问题. 对于文本类型,使用编码转换类来处理它. 实现如下:
公共类转换{
/ **将ISO-8859-1代码转换为GB2312
* /
公共静态字符串ISOtoGB(String iso){
字符串gb;
尝试{
if(iso.equals(“”)|| iso == null){
返回“”;
}
其他{
iso = iso.trim();

gb =新字符串(iso.getBytes(“ ISO-8859-1”),“ GB2312”);
返回gb;
}
}
catch(异常e){
System.err.print(“代码转换错误: ” + e.getMessage());
返回“”;
}
}
}
将其编译为一个类,可以调用Convert类的静态方法ISOtoGB()来转换编码.
喜欢
不喜欢
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/shumachanpin/article-296123-1.html
如今美国不可能再有机会给你
梦一场