`
itlangzicn
  • 浏览: 39134 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts 的中文乱码问题解决方案(3个)

阅读更多

解决: 推荐使用 Filter.
  ①. 使用 Filter.

public class EncodeFilter implements Filter {

 @Override
 public void destroy() {
  // TODO Auto-generated method stub

 }
 @Override
 public void doFilter(ServletRequest request, ServletResponse response,
   FilterChain chain) throws IOException, ServletException {
  // TODO Auto-generated method stub
  //从浏览器中的到的二进制数据用utf-8编码
  request.setCharacterEncoding("UTF-8");
  chain.doFilter(request, response); 
 }

 @Override
 public void init(FilterConfig arg0) throws ServletException {
  // TODO Auto-generated method stub

 }

}

 在web.xml文件中配置filter:

<filter>
   <filter-name>encoding</filter-name>
   <filter-class>cn.itcase.strutsdemo.user.domain.EncodeFilter</filter-class>
  </filter>
  <filter-mapping>
   <filter-name>encoding</filter-name>
   <servlet-name>action</servlet-name>
  </filter-mapping>

 

②. 提供自定义的 ActionServlet

public class MyActionServlet extends ActionServlet {

    private static final long serialVersionUID = 5165092497954010055L;
   
    @Override
    protected void process(HttpServletRequest request,
      HttpServletResponse response) throws IOException, ServletException {
     request.setCharacterEncoding("UTF-8");
     super.process(request, response);
    }
    
   }
   
   web.xml 文件中
   <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
   改为
         <servlet-class>cn.itcast.struts.servlet.MyActionServlet</servlet-class>
   
  ③. 提供自定义的 RequestProcessor             
  
  public class MyRequestProcessor extends RequestProcessor {

   @Override
   public void process(HttpServletRequest request, HttpServletResponse response)
     throws IOException, ServletException {
    request.setCharacterEncoding("UTF-8");
    super.process(request, response);
   }
   
  }       
  
  在 struts-config.xml 文件中加入如下内容:
  <controller processorClass="cn.itcast.struts.servlet.MyRequestProcessor"/>    
分享到:
评论
2 楼 懒萝卜 2010-05-07  
过滤器还好吧。
在Struts中是使用拦截器。
1 楼 oritenson 2010-05-07  
个人觉得还是用Filter比较方便

相关推荐

    struts 中文乱码问题解决

    本文将深入探讨Struts框架中中文乱码的问题,并提供一系列有效的解决方案。 ### Struts框架简介 Struts是一个开源的MVC(Model-View-Controller)框架,主要用于简化Java Web应用程序的开发。它基于Servlet和JSP...

    Struts中文乱码解决方案

    三、请求参数中的中文乱码问题解决方案: 对于用户提交的含有汉字的请求数据导致的乱码,可以通过自定义 RequestProcessor 来解决。首先,创建一个新的类 `SelfRequestProcessor` 继承自 Struts 内置的 `...

    Struts2中文乱码问题最终解决方案

    升级到2.1.8.1或更高版本可以修复这个问题,因为官方已经改进了过滤器处理字符编码的方式。 2. **POST乱码问题**: POST请求的乱码通常发生在请求参数从客户端发送到服务器的过程中。尽管在Struts.xml中设置了字符...

    struts解决中文乱码问题

    这个问题的出现通常是由于客户端和服务器端的字符集不一致导致的。本文将深入探讨如何解决Struts框架下的中文乱码问题。 首先,我们来看一个具体的实例。在登录验证的例子中,原本只要用户名(username)和密码...

    struts2的中文乱码问题解决

    ### Struts2中文乱码问题解决方案 在使用Struts2框架进行Web开发的过程中,中文乱码问题是一个常见的挑战。这不仅影响用户体验,还可能导致数据不一致等问题。为了解决这一问题,我们需要理解其背后的原理,并采取...

    Struts2乱码终极解决办法

    在开发基于Struts2框架的应用时,经常遇到的一个问题就是中文乱码。这不仅影响用户体验,还可能导致数据处理错误。本文将详细介绍如何彻底解决Struts2中的乱码问题,并提供实际可行的解决方案。 #### 二、乱码产生...

    struts,ajax乱码解决方案

    3. **JSP和Struts乱码解决方案** - **JSP**:在JSP页面中,可以使用`;charset=UTF-8" %&gt;`来设置页面编码,或者在Java代码中使用`request.setCharacterEncoding("UTF-8")`来设定请求的字符编码。 - **Struts**:在...

    struts1.2 解决中文乱码

    ### Struts 1.2 中文乱码问题详解与解决方案 #### 一、问题背景及原因分析 在 Web 应用开发过程中,特别是在使用 Java 的 Struts 1.2 框架时,中文乱码问题是开发者经常遇到的一个难题。这不仅影响用户体验,还会...

    struts 2. 5.2解决中文乱码

    解决这个问题需要深入理解HTTP协议、Java I/O流以及Struts 2框架的配置。 首先,我们需要了解乱码产生的原因。在Web应用中,数据在网络传输过程中是以字节流的形式,而字符集的不同可能导致字节流在解码时出现问题...

    奇怪的struts2的中文乱码问题及解决.docx

    本文将深入探讨一个关于Struts2在Internet Explorer(IE)浏览器中出现中文乱码的奇怪问题及其解决方案。 首先,中文乱码问题通常涉及到几个关键因素:数据库编码、开发文件编码和网页的Content-Type编码。在确保这...

    Struts的乱码问题

    在Web开发过程中,尤其是使用Java Web框架如Struts进行项目开发时,经常遇到的一个问题是中文字符的乱码问题。这个问题主要体现在中文字符在Web页面上的显示不正确,或是通过表单提交的数据在服务器端无法正确识别...

    struts之中文乱码问题

    Struts是一个非常流行的Java Web应用程序框架,用于构建和管理MVC(模型-视图-控制...如果你的项目中仍然存在乱码问题,建议参考提供的“Struts中文乱码解决方案.doc”文档,它可能包含了更详细的排查步骤和解决方案。

    Struts2.0解决中文乱码

    ### 解决方案:Struts2.0中的中文乱码解决方案 #### 1. 配置struts.properties文件 在Struts2.0中,可以通过修改`struts.properties`文件来指定整个应用的默认字符编码。关键的配置项是`struts.i18n.encoding`,将...

    struts2中文乱码问题

    ### Struts2中文乱码问题解决方案 在使用Struts2框架进行Web开发的过程中,中文乱码问题是一个常见的问题。这不仅影响用户体验,还可能导致数据处理错误。本文将详细介绍几种解决Struts2中文乱码问题的方法。 ####...

    struts解决乱码问题

    在使用Struts框架进行Web开发时,经常会遇到一个让人头疼的问题——中文乱码。特别是在Tomcat服务器环境下,如何有效地解决这一问题,确保中文字符能够正常显示与传递,是许多开发者都需要面对的挑战。本文将通过...

    struts处理中文乱码问题总结

    ### Struts处理中文乱码问题总结 #### 一、引言 在使用Struts框架进行Web应用程序开发过程中,中文乱码问题是开发者经常会遇到的技术难题之一。这类问题虽然看似不起眼,但如果处理不当,则可能会影响到用户体验...

    struts2中文乱码

    ### Struts2中文乱码问题解析与解决方案 #### 一、引言 在Web开发过程中,尤其是使用Struts2框架时,中文字符的正确显示是一个常见的挑战。本篇文章将详细介绍Struts2中出现中文乱码的原因及解决方案,帮助开发者更...

    Struts实现文件下载中文乱码解决方案

    以下是对这个问题的详细分析及解决方案: 首先,问题出现在文件列表的展示和下载链接的生成过程中。在Action中,`request.getRealPath()` 获取了服务器上文件的物理路径,然后遍历目录,将文件名添加到ArrayList中...

    struts2文件下载(解决了中文乱码问题)

    在处理文件下载时,Struts2提供了一套完整的解决方案,包括处理中文文件名的乱码问题。在标题提到的场景中,开发者可能遇到了在使用Myeclipse 6.5集成开发环境,JDK1.6和Tomcat 6.0服务器环境下,通过Struts2进行...

    Struts2资源文件在jsp页面中显示乱码解决

    通过上述两种解决方案,我们可以有效解决Struts2资源文件在JSP页面中显示乱码的问题。虽然第一种方法可以达到目的,但其带来的维护不便使其不被推荐;相比之下,安装PropertiesEditor插件不仅操作简便,还能彻底解决...

Global site tag (gtag.js) - Google Analytics