继承RequestProcessor重写process方法:
package com.xj.struts.common;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.RequestProcessor;
public class EncodingProcessor extends RequestProcessor {
public void process(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
// TODO Auto-generated method stub
//<controller processorClass="com.xj.struts.common.EncodingProcessor" />
request.setCharacterEncoding("GB2312");
response.setContentType("text/html;charset=GB2312");
super.process(request, response);
}
}
然后在STRUTS配置文件中:<controller processorClass="com.xj.struts.common.EncodingProcessor" /> 把控制器的RequestProcessor默认处理类替换成com.xj.struts.common.EncodingProcessor。
本文详细介绍了如何在Struts框架中通过继承RequestProcessor类并重写process方法来实现HTTP请求和响应的字符编码转换,具体包括设置请求的字符编码为GB2312以及设置响应的内容类型。

1842

被折叠的 条评论
为什么被折叠?



