首先编写一个类进行转码:如下
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.RequestProcessor;
import org.apache.struts.config.ForwardConfig;
import org.apache.commons.logging.Log;
public class GBKRequestProcessor extends RequestProcessor {
public MyRequestProcessor() {
}
protected boolean processPreprocess(HttpServletRequest request,
HttpServletResponse response) {
try {
// 按JSP上设置的字符集定
request.setCharacterEncoding("GBK");
} catch (Exception ex) {
System.out.println("字符集设置失败");
}
return true;
}
}
其次在struts-cinfig.xml设置如下:
<controller processorClass="包名.GBKRequestProcessor" />
不要放到最后。
本文介绍了一种在Struts框架中实现GBK编码处理的方法。通过创建自定义的请求处理器类GBKRequestProcessor,并在struts-config.xml文件中进行配置,确保了中文字符能够正确处理。
507





