GBKRequestProcessor 的主要作用是为 Struts 添加了一个运行过滤器,对经过其的数据进行过滤转码为 GB2312
Struts 实现中文支持步骤
- 编写GBKRequestProcessor类,继承RequestProcessor。
GBKRequestProcessor类保存于 Action 包 - 重写方法 processPreprocess(),指定字符集。
package net.royakon.action; public class GBKRequestProcessor extends RequestProcessor { protected boolean processPreprocess(HttpServletRequest request, HttpServletResponse response) { try{ request.setCharacterEncoding("gb2312"); }catch(Exception ex){ ex.printStackTrace(); //如果编码设置异常则终止struts流程; return false; } //返回值为true,代表继续struts后续流程. return true; } }
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd"> <struts-config> <data-sources /> <form-beans > <form-bean name="regForm" type="cn.net.royakon.form.RegForm" /> </form-beans> <global-exceptions /> <global-forwards /> <action-mappings > <action attribute="regForm" name="regForm" path="/regAction" scope="request" type="cn.net.royakon.action.RegActionAction"> <forward name="result" path="/relult.jsp" /> </action> </action-mappings> <!-- 配置自定义的中文处理器为主 Action 处理器 --> <controller processorClass="cn.net.royakon.action.GBKRequestProcessor"/> <message-resources parameter="cn.net.royakon.ApplicationResources" /> </struts-config>
Categories: 网页编程