`
javaeeboy
  • 浏览: 12120 次
  • 性别: Icon_minigender_1
  • 来自: 汕头
社区版块
存档分类
最新评论

struts1.x中文乱码解决

阅读更多
使用过滤器Filter过滤struts1的中文乱码

第一步:先设定jsp页面或html页面的编码
jsp:<%@ page language="java" contentType="text/html" pageEncoding="UTF-8"%>
html:<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

第二步:我们来看看web文件的配置

  <filter>       
      <filter-name>characterEncodingFilter</filter-name>       
      <filter-class>hr.util.CharacterEncodingFilter</filter-class>   
      <init-param>   
      <param-name>encoding</param-name>   
      <param-value>UTF-8</param-value>   
      </init-param>   
      <init-param>   
      <param-name>enable</param-name>   
      <param-value>true</param-value>   
      </init-param>   
   </filter>   
   <filter-mapping>       
    <filter-name>characterEncodingFilter</filter-name>       
    <servlet-name>action</servlet-name>     
  </filter-mapping>   
  


第三步:生成Filter文件

package hr.util;    
   
import javax.servlet.Filter;    
import javax.servlet.FilterConfig;    
import javax.servlet.ServletException;    
import javax.servlet.ServletRequest;    
import javax.servlet.ServletResponse;    
import javax.servlet.FilterChain;    
import java.io.IOException;    
   
public class CharacterEncodingFilter implements Filter {    
  private FilterConfig filterConfig;    
   
  private String encoding;    
   
  private boolean enable;    
   
  public CharacterEncodingFilter() {    
    encoding = "UTF-8";    
    enable = false;    
  }    
   
  public void init(FilterConfig filterConfig) throws ServletException {    
    this.filterConfig = filterConfig;    
    loadConfigParams();    
  }    
   
  private void loadConfigParams() {    
    encoding = filterConfig.getInitParameter("encoding");    
    String strIgnoreFlag = filterConfig.getInitParameter("enable");    
    if (strIgnoreFlag.equalsIgnoreCase("true")) {    
      this.enable = true;    
    } else {    
      this.enable = false;    
    }    
  }    
   
  public void doFilter(ServletRequest request, ServletResponse response,    
      FilterChain chain) throws IOException, ServletException {    
    if (enable) {    
      request.setCharacterEncoding(encoding);    
    }    
    chain.doFilter(request, response);    
  }    
   
  public void destroy() {    
    filterConfig = null;    
    encoding = null;    
  }    
}    

通过以上的方法,在struts中就再也不用担心乱码问题了,也不用再在每个页面中写  request.setCharacterEncoding("UTF-8")了


分享到:
评论

相关推荐

    Struts1.系列教程

    Struts1.x 系列教程聚焦于解决在使用Struts1.x框架开发应用程序时遇到的各种问题,本篇主要关注的是属性(资源)文件乱码问题的解决方案。在国际化和多语言支持的应用中,属性文件是存储不同语言文本的关键组件。...

    struts2.x一些技术细节资料总结

    本篇文章将详细探讨在Struts2.x中两个Action之间传递值的技术细节。 1. **Action之间的传值方案** - **方案一:Chain(链式调用)** Chain结果类型允许一个Action直接将控制权交给另一个Action,而无需重新发起...

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

    当Struts2应用在JSP页面中尝试加载并显示这些文本时,可能会遇到乱码问题,尤其是在处理中文等非英文字符时更为常见。 乱码问题的根源在于字符编码的不匹配。当资源文件的编码格式与JSP页面或服务器解析时所使用的...

    struts2中文乱码解决Demo

    本DEMO是为了解决Struts2在处理中文输入时可能出现的乱码问题,确保系统能够正确地接收和显示中文字符。 首先,我们要理解乱码产生的原因。在Web应用中,数据的传输通常涉及多种编码方式,如HTTP请求的默认编码通常...

    Struts框架下Ajax发送中文乱码问题的解决

    总结来说,解决Struts框架下Ajax发送中文乱码问题的关键在于: 1. 确保Ajax请求时设置正确的`Content-Type`,以UTF-8编码发送数据。 2. 在Struts配置文件中配置`CharacterEncodingFilter`或在Action中手动设置请求...

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

    综上所述,解决Struts文件下载中文乱码问题的关键在于统一编码方式,确保URL编码、解码和HTTP响应头中的字符集设置正确。通过以上步骤,可以有效地避免中文文件名在下载过程中出现乱码的情况。同时,注意文件的读取...

    J2EE中Struts中四种解决中文乱码问题的方法

    ### J2EE中Struts框架下解决中文乱码问题的四种方法 在Java Web开发过程中,尤其是使用Struts框架时,经常会遇到中文乱码的问题。本文将详细介绍在J2EE环境下,利用Struts框架解决中文乱码问题的四种实用方法。 ##...

    Ckeditor3.X与ckfinder2.X整合forJAVA (支持文件上传,解决中文乱码)

    在网上找了半天,看见两偏整合教程不错,把两偏整理成一偏供参考。 别人一个文档就要10分才能下,本人分不多了,扣大家5分来赚取回来。...Ckeditor3.X与ckfinder2.X整合forJAVA (支持文件上传,解决中文乱码)

    struts,ajax乱码解决方案

    【Struts和Ajax乱码解决方案】 在Web开发中,乱码问题始终是一个常见的困扰,特别是对于使用Struts和Ajax技术的开发者来说。乱码问题主要出现在数据的输入、传输和展示过程中,涉及到编码格式的选择和一致性。以下...

    使用prototype.js发送ajax get请求中文参数乱码解决

    综上所述,解决`prototype.js`发送Ajax GET请求中文参数乱码问题的关键在于确保客户端、服务器和传输过程中的编码一致性。这包括设置请求头、服务器配置以及HTML页面的字符集声明。在实际开发中,理解并处理这些细节...

    Struts 乱码问题

    ### Struts乱码问题解析与解决方案 在Java Web开发中,尤其是使用Struts框架时,乱码问题是开发者常遇到的挑战之一。乱码通常出现在页面显示或后台处理数据时,表现为字符编码不一致导致的数据展示错误。本文将深入...

    ajax get请求中文参数乱码解决

    在进行Web开发时,我们经常会遇到Ajax GET请求发送中文参数时出现乱码的问题...在提供的压缩包文件`strtus-ajax-by-get-zh-garbled`中,可能包含了关于Struts框架下解决Ajax GET请求中文乱码的示例代码,可以参考学习。

    Struts+Hibernate+MyEclipse+Tomcat+MySQL的乱码之解决

    总之,要解决Struts+Hibernate+MyEclipse+Tomcat+MySQL环境中的乱码问题,你需要检查并设置以上提到的所有环节的编码,确保它们统一为UTF-8。通过这种方法,可以有效地避免乱码的出现,从而提供良好的用户体验。在...

    Ajax乱码解决方案(docx)

    3. **JSP和Struts的乱码解决方案** - 使用过滤器(如`SetCharacterEncodingFilter`)设定请求和响应的编码为UTF-8,确保数据在传输过程中不会出现乱码。 - 对于JSP页面,可以在页面顶部添加`;charset=UTF-8" %&gt;`来...

    框架技术-Sring_Struts整合

    为了解决中文乱码问题,需要配置CharacterEncodingFilter,设定字符编码为UTF-8,确保数据的正确解析。最后,配置Struts2的过滤器StrutsPrepareAndExecuteFilter,用于处理所有的HTTP请求。 然后,在Struts的配置...

    struts2中通过json传值解决乱码问题的实现方法

    总之,在使用Struts2进行Web开发时,通过合理使用encodeURI和URLDecoder工具类,可以有效解决通过JSON传值时出现的中文乱码问题。这要求开发人员在前端JavaScript代码和后端Java代码中都进行适当的编码和解码操作,...

    strus1教程 详解

    在本文中,我们将深入探讨如何使用MyEclipse开发和运行基于Struts1的程序,以及解决可能出现的ActionForm乱码问题。 首先,我们要实现的功能是一个名为mystruts的程序,该程序用于录入和查询产品信息。程序包含以下...

    struts乱码讲解

    ### Struts乱码问题详解与解决方案 #### 一、引言 在Web开发过程中,特别是在使用Struts框架进行开发时,经常会遇到字符编码的问题,尤其是中文字符的乱码问题。本文将详细介绍Struts中常见的乱码现象,并提供具体...

Global site tag (gtag.js) - Google Analytics