`
zzc1684
  • 浏览: 1228425 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

spring mvc乱码的解决方案

阅读更多

 

        Spring中的字符集过滤器可以很方便的为我们解决项目中出现的中文乱码问题,而且使用方法也很简单,只需要在web.xml文件中配置一下该过滤器,设置两个重要的参数(encodingforceEncoding)即可:

  1. <!-- 配置请求过滤器,编码格式设为UTF-8,避免中文乱码-->  
  2.     <filter>  
  3.        <filter-name>springUtf8Encoding</filter-name>  
  4.        <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
  5.        <init-param>  
  6.            <param-name>encoding</param-name>  
  7.            <param-value>UTF-8</param-value>  
  8.        </init-param>  
  9.        <init-param>  
  10.            <param-name>forceEncoding</param-name>  
  11.            <param-value>true</param-value>  
  12.        </init-param>   
  13.     </filter>  
  14.     <filter-mapping>  
  15.        <filter-name>springUtf8Encoding</filter-name>  
  16.        <url-pattern>/*</url-pattern>  
  17.    </filter-mapping> 

 

  • 今天用springMVC接收表单中文数据时总量乱码,按照网上的解决方案设置过滤器后,post的表单不乱码了,但get的表单还是会乱码。

解决get方法乱码的方案是修改tomcat的server.xml配置文件,修改<connector>如下,加入字符集编码:

 

Xml代码  收藏代码
  1. <Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>  

 

 

过滤器的代码如下:

 

Xml代码  收藏代码
  1. <!-- Character Encoding filter -->  
  2.     <filter>  
  3.         <filter-name>encodingFilter</filter-name>  
  4.         <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>  
  5.         <init-param>  
  6.             <param-name>encoding</param-name>  
  7.             <param-value>UTF-8</param-value>  
  8.         </init-param>  
  9.         <init-param>  
  10.             <param-name>forceEncoding</param-name>  
  11.             <param-value>true</param-value>  
  12.         </init-param>  
  13.     </filter>  
  14.   
  15.     <filter-mapping>  
  16.         <filter-name>encodingFilter</filter-name>  
  17.         <url-pattern>/*</url-pattern>  
  18.     </filter-mapping>  

 

  • 以上这样可以解决几乎所有的总量(注意是“几乎”),一些get方法还是没办法解决,如

 

Html代码  收藏代码
  1. <a href="test.jsp?key=中文" />  

 这里有个更好的解决办法就是配置tomcat的server.xml文件

 

Xml代码  收藏代码
  1. <Connector connectionTimeout="20000" port="8888" protocol="HTTP/1.1" redirectPort="8443"  useBodyEncodingForURI="true"/> 
分享到:
评论

相关推荐

    彻底解决Spring MVC中文乱码问题的方案

    本篇文章将深入探讨如何彻底解决Spring MVC中的中文乱码问题,以便于开发者能够流畅地处理中文数据。 首先,当用户通过表单提交中文参数时,可能会遇到乱码问题。确保JSP页面的编码设置为UTF-8,例如在页面头部添加...

    JSP乱码解决方案

    本文将深入探讨JSP乱码的原因及其解决方案,帮助开发者有效地处理这类问题。 ### 1. JSP乱码的成因 - **字符集设置不一致**:JSP文件、HTML页面、HTTP头、Servlet输出以及数据库存储等环节的字符集设置不一致,...

    Spring MVC参数传递中文乱码解决方法分享

    一、GET 方式中文乱码解决方案 在 GET 方式中,我们可以使用以下方法来解决中文乱码问题: String str = new String(request.getParameter("参数名").getBytes("iso-8859-1"), "utf-8"); 这个方法可以将 GET ...

    json 中文乱码解决方案

    ### json 中文乱码解决方案 在处理JSON数据时,经常会出现中文乱码的问题,尤其是在不同编码格式间进行转换时更为常见。本文将详细介绍如何解决JSON中的中文乱码问题,并提供几种简单实用的方法来帮助开发者避免这...

    详解Spring MVC3返回JSON数据中文乱码问题解决

    8编码的数据,还是先将数据编码为GBK后写入到ServletOutputStream中,又或者是在框架层面通过配置@RequestMapping的produces属性来指定响应编码,都是围绕字符编码处理的解决方案。通过这些方法的实施,开发者可以...

    工作流乱码解决方案

    "工作流乱码解决方案"这个主题就针对Activiti5在处理中文或其他非ASCII字符时可能出现的显示异常进行探讨。 Activiti5是一个开源的工作流和业务流程管理平台,它基于Java,支持BPMN 2.0标准,为企业提供了一套强大...

    spring注解出现中文乱码

    ### Spring框架中注解出现中文乱码的问题解析与解决方案 #### 问题背景 在Spring框架的应用开发中,尤其是在处理HTTP请求时,经常会遇到通过JSON格式传递数据的情况。然而,在某些场景下,开发者可能会遇到中文...

    Ajax乱码解决方案

    ### Ajax乱码解决方案 在进行Ajax开发的过程中,经常会遇到数据编码问题导致的乱码现象。这类问题虽然看似简单,但若处理不当,则可能耗费大量时间进行调试与解决。本文将结合一个具体的案例来探讨如何有效地解决...

    SpringMVC Tomcat控制台乱码问题解决方案

    SpringMVC Tomcat控制台乱码问题解决方案 本文主要介绍了SpringMVC Tomcat控制台乱码问题解决方案,该解决方案通过示例代码进行了详细的介绍,对大家的学习或者工作具有一定的参考学习价值。下面将对该解决方案进行...

    SpringMVC解决GET请求时中文乱码的问题.rar

    本文将深入探讨这个问题,并提供解决方案。 一、问题解析 1. GET请求原理:GET请求的参数通常会附加在URL后面,形如`http://example.com?param1=value1&param2=value2`。浏览器在构建这个URL时,会按照默认的字符...

    MySpringMVC-字符乱码处理.rar

    下面将详细讨论Spring MVC中的字符编码问题及其解决方案。 首先,我们需要理解字符乱码的产生原因。字符乱码通常发生在数据的编码、传输和解码过程中。例如,当用户通过表单提交非ASCII字符时,如果服务器端的字符...

    springmvc开发笔记

    #### 三、解决方案详解 针对这个问题,我们提供了两种解决策略:通过注解配置和通过继承自定义转换器的方式。 ##### 方案一:通过默认注解配置 这种方式通过Spring MVC的配置来改变默认的编码方式。具体步骤如下...

    JSP中文乱码解决集锦

    可以使用第三方库如Apache Commons FileUpload或Spring MVC的MultipartFile来处理文件上传,它们通常内置了对多部分请求的正确编码处理。 总之,解决JSP中文乱码问题的关键在于确保整个请求处理链中的字符编码一致...

    拦截器解决中文乱码问题

    然而,值得注意的是,尽管拦截器是一个有效的解决方案,但在某些情况下,如静态资源的处理,可能需要通过其他方式(如配置服务器或修改资源文件的编码)来解决乱码问题。此外,对于前后端分离的应用,前端也需要确保...

    Spring MVC 关于controller的字符编码问题

    在处理字符编码问题时,有几种常见的解决方案: 1. **不使用`@ResponseBody`注解**: 当不使用`@ResponseBody`时,你可以直接操作`HttpServletResponse`对象来设置响应内容的类型和字符集。例如: ```java @...

    解决表单post,get到springMVC后台乱码的问题

    解决方案 要解决表单post,get到springMVC后台乱码的问题,需要在多个方面进行调整: 1. 前台表单编码:在前台表单中,需要指定编码方式为 UTF-8,例如在 HTML 中添加 `&lt;meta charset="UTF-8"&gt;`。 2. Spring MVC ...

    springmvc插件

    #### 六、常见问题及解决方案 1. **启动时出现 NoClassDefFoundError**:检查是否缺少必要的 JAR 包或者 Java 版本不兼容。 2. **页面无法正常渲染**:检查视图解析器的配置是否正确,以及 JSP 文件路径是否正确。 ...

    jiongdashen(springMVC源码)

    【标题】"jiongdashen(springMVC源码)"揭示了这是一个关于Spring MVC框架的源码项目,可能是某位开发者或...通过这个源码项目,开发者可以深入理解Spring MVC的实际应用,并从中学习到最佳实践和常见问题的解决方案。

    idea 控制台中文乱码和web项目乱码(csdn)————程序.pdf

    在开发Java Web应用程序时,IDEA(IntelliJ IDEA)控制台和Web项目的乱码问题是一个常见的困扰。...在实践中,根据具体情况选择合适的解决方案,确保整个数据处理流程中的编码统一,可以有效地避免乱码问题。

    SpringMVC解决乱码

    SpringMVC乱码解决方案 SpringMVC是一个流行的Java Web框架,用于构建Web应用程序。然而,在使用SpringMVC时,可能会遇到乱码问题,例如在使用@ResponseBody注解时返回的数据出现乱码。在本文中,我们将讨论解决...

Global site tag (gtag.js) - Google Analytics