Struts 中文乱码解决方案
一. 在 Action 类中的解决方法:
调用下列方法即可
final public class Chinese {
public static String convert(String str){
try{
byte[] bytes=str.getBytes("ISO-8859-1");
return new String(bytes,"UTF-8");
}
catch(Exception e){
return str;
}
}
}
例如:String chaosChinese; // chaosChinese 为包含乱码的字符串,则
String result= Chinese.convert(chaosChinese) // result 为正确的中文字符串
二.在 ActionForm 类中的解决方法:
在 ActionForm 中的 reset 方法中增加下列语句即可
request.setCharacterEncoding(“GBK”);
public void reset(ActionMapping mapping, HttpServletRequest request)
{
// TODO Auto-generated method stub
try{
request.setCharacterEncoding(“GBK”);
}
catch(UnsupportedEncodingException ee){}
//其它语句
}
请求参数中的中文乱码问题解决方案
在获得用户提交的带有汉字的请求数据时,中文会出现乱码,下面的方法利用覆盖机
制
解决了这个问题。基本步骤如下:
第一步:设计一个从继承的类,并覆盖方法 processPreprocess()
import java.io.UnsupportedEncodingException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.RequestProcessor;
评论0