package util;
public class Encoding {
public static String isToGB(String src) {
String strRet = null;
try {
strRet = new String(srcgetBytes(ISO__) GBK);
} catch (Exception e) {
eprintStackTrace();
}
return strRet;
}
}
小结这办法虽然能解决中文乱码但是每次还得调用是不是很不方便呢?如果忘记了调用这个方法那程序又乱码了维护起来很困难下面我们看另一种解决方案
B继承RequestProcessor类
RequestProcessor类处理ActionServlet接收到的所有请求根据它的处理方式可将每个请求分解为多个小任务分别由不同的方法执行这就允许针对请求的各个单独部分自定义处理
RequestProcessor类的部分方法如下
processPath() 获取客户端请求的路径URI
processMapping() 根据请求URI获取所需的映射信息
processRoles() 检查用户的角色是否允许他访问请求的资源
processActionForm() 新建一个Form Bean或从请求会话中检索Form Bean
processForward() 处理元素forward以匹配当前的请求路径
processValidate() 调用Form Bean的validate()方法
processPreprocess() 告诉请求处理器调用此方法后是否应继续处理请求
processLocale() 为请求选择一个语言环境
processActionCreate() 实例化当前ActionMapping指定的类的实例
processActionPerform() 将调用action的perform()或execute()方法
呵呵发没发现RequestProcess类的所有方法都有一个前缀proess接着往下看吧
RequestProcessor在action之前所以我们应着手RequestProcessor要开发自己的RequestProcessor类步骤如下
() 创建一个继承orgapachestrutsactionRequestProcessor的类在改类中显示定义一个无参方法体为空的构造器
[] [] [] [] []