急,有关jsp表单中的乱码问题

来源:百度知道 编辑:UC知道 时间:2024/05/13 01:36:23
本人用jsp+javabean设计一网站,但是网站上从表单上取出中文的话就是乱码,我在页面上已经+了<%request.setCharacterEncoding("GB2312");%>这句语句了,还是会出现乱码,请教是什么地方出了问题,用的jsp服务器是tomcat5.5。

1) 在每个JSP页面开头写<%@ page contentType="text/html;charset=GBK"%>
2) 用以下方法进行转码。
static public String iso2gb(String str) {
if (str != null) {
byte[] tmpbyte=null;
try {
tmpbyte=str.getBytes("ISO8859_1");}
catch (UnsupportedEncodingException e) {
System.out.println(e.getMessage());}
try {
str=new String(tmpbyte,"GBK"); }
catch(UnsupportedEncodingException e) {
System.out.println(e.getMessage());}
}
return str;
}

一个好的方法是在web.xml部署一个中文乱码自动转换过滤器
web.xml
<filter>
<filter-name>CharacterEncoding</filter-name>
<filter-class>com.common.jsp.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value