Chinaunix首页 | 论坛 | 博客
  • 博客访问: 36596
  • 博文数量: 8
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 100
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-05 22:31
文章分类

全部博文(8)

文章存档

2008年(8)

我的朋友

分类: Java

2008-04-28 16:42:45

struts框架中文乱码解决两种方案(黎声)
  在servlet开发中如果出现中文乱码问题,可以在Servlet的doPost或doGet方法中,对请求和响应设置中文编码的方式解决乱码问题,这是方案一。或者采用过滤器实现,这是方案二。

  sruts也可以采用这两种方案,一是过滤器技术实现,该实现与servlet开发中问题解决方式相同,我们来看另一种方案,由于struts框架中将用户的请求都交给ActionServlet处理,而ActionServlet是框架已经写好的Servlet类,我们无法直接修改ActionServlet源码。因此在struts中如果出现中文乱码,可以第一步新建一个类继承struts框架的ActionServlet类,然后重写process方法,该方法用于处理所有用户的请求。参考代码如下

protected void process(HttpServletRequest request,
                           HttpServletResponse response) throws IOException,
        ServletException {
      //对请求和响应设置中文编码
      request.setCharacterEncoding("GBK");
      response.setCharacterEncoding("GBK");

      //别忘了调用父类的process方法
      super.process(request,response);
    }

第二步修改web.xml文件,将所有用户请求交给继承ActionServlet的类处理

<servlet>

<servlet-name>action</servlet-name>
<servlet-class>此处替换为继承ActionServlet类的类名</servlet-class>

阅读(638) | 评论(0) | 转发(0) |
0

上一篇:model2(sevlet/jsp/javabean+bo)开发模式的探讨

下一篇:没有了

给主人留下些什么吧!~~