总结几种方式,都使用的话能解决大多数乱码的情况

1.所有页面使用

<%@page language="java" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8"%>

  

2.服务器添加过滤器

<!-- 编码过滤器 -->
<filter>
<filter-name>characterEncoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncoding</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>

这是为了解决post表单中的中文能顺利提交到后台

3.GET请求中文乱码,修改tomcat中的server.xml配置文件

tomacat对GET和POST请求处理方式是不同的,要处理针对GET请求的编码问题,则需要改tomcat的server.xml配置文件,如下:

把这个

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>

修改成

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true"/>

或者

<Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" uRIEncoding="utf-8"/>

最关键的点在这里:如果你是更改的tomcat安装目录的server.xml配置文件,那么在用eclipse运行项目时会发现配置没起作用,其实是因为eclipse在运行项目时是用的eclipse中配置的tomcat,那么问题就好解决了,打开eclipse中的tomcat配置文件。

更多的可以参考 http://blog.csdn.net/xuechongyang/article/details/8283924

以下是个人备注,未测试

对于AJAX中文传参可以这样

get

js端

var url = 'policy.do?word=encodeURI(encodeURI(‘商品'))'

var url = 'policy.do?word=escape(‘商品')'

服务器端

String word = request.getParameter("word");

word = java.net.URLDecoder.decode(word,"UTF-8");

post

request.setCharacterEncoding("UTF-8"); 
String name = request.getParameter("name");

spring MVC中文乱码相关总结的更多相关文章

  1. 彻底解决Spring MVC 中文乱码 问题

    1:表单提交controller获得中文参数后乱码解决方案 注意: jsp页面编码设置为UTF-8 form表单提交方式为必须为post,get方式下面spring编码过滤器不起效果 <%@ p ...

  2. spring mvc 中文乱码 post与get的方法解决

    spring mvc表单提交中文参数乱码问题 今天测试spring mvc  ,中文乱码,在web.xml中加上 <filter> <filter-name>encodingF ...

  3. Spring MVC 中文乱码的解决

    对于POST方法提交的中文乱码 , 可在web.xml中添加如下代码 : <filter> <filter-name>encodingFilter</filter-nam ...

  4. (转)spring mvc 中文乱码问题解决

    在eclipse环境里,页面传输数据的时候通常用ISO-8859-1这个字符集可以用 str = new String(str.getBytes("ISO-8859-1"), &q ...

  5. 解决Spring MVC中文乱码

    在web.xml中设置编码过滤器 <filter> <filter-name>characterEncodingFilter</filter-name> <f ...

  6. spring 解决中文乱码问题

    spring 解决中文乱码问题 使用spring的前提下在web.xml中配置 <filter> <filter-name>encodingFilter</filter- ...

  7. spring mvc 返回乱码SpringMVC使用@ResponseBody注解返回中文字符串乱码的问题

    原文地址:https://www.cnblogs.com/fzj16888/p/5923232.html 先说一下我的经历,以及解决问题的而过程. 在使用SpringMVC的时候,最开始的时候在配置文 ...

  8. Spring Boot 中文乱码问题解决方案汇总

    使用 Spring Boot 开发,对外开发接口供调用,传入参数中有中文,出现中文乱码,查了好多资料,总结解决方法如下: 第一步,约定传参编码格式 不管是使用httpclient,还是okhttp,都 ...

  9. Spring MVC中文文档翻译发布

    前后经过九个月,我翻译的Spring MVC官方4.2.4版本中文文档可以发布第一个较为完整的版本了.译文上尽量做到准确并且符合中文习惯,让人能读懂,能理解.现全文发布如下,也希望它能够给出其价值,并 ...

随机推荐

  1. [原]基于CAS实现单点登录(SSO):登录成功后,cas client如何返回更多用户信息

    从cas server登录成功后,默认只能从casclient得到用户名.但程序中也可能遇到需要得到更多如姓名,手机号,email等更多用户信息的情况. cas client拿到用户名后再到数据库中查 ...

  2. ubuntu中如何关闭防火墙?

    只需要输入 root@stgman-desktop:~#  sudo ufw disable 防火墙在系统启动时自动禁用

  3. Android 教你打造炫酷的ViewPagerIndicator 不仅仅是高仿MIUI

    1.概述 哈,今天给大家带来一个ViewPagerIndicator的制作,相信大家在做tabIndicator的时候,大多数人都用过 TabPageIndicator,并且很多知名APP都使用过这个 ...

  4. md笔记——编程术语

    thinkPython 读书笔记 本列表根据thinkPython中记录的大量编程术语 整理而来. 该书的重点不是教会你Python,而是培养读者用计算机科学家一样的思路来思考,设计,开发. 讲解了语 ...

  5. 部署SharePoint2013解决方案

    Add-SPSolutionInstall-SPSolution -Identity Grain2013.wsp -GACDeployment -CompatibilityLevel {14,15}  ...

  6. Android开源资料大集合_架构&UI

    1. Anroid开源框架架 https://github.com/kymjs/KJFrameForAndroidhttp://www.oschina.net/p/thinkandroid http: ...

  7. Replace不区分大小写

    private string ReplaceNoCase(string text, string oldValue, string newValue) { return System.Text.Reg ...

  8. ROS验证publisher和subscriber

    在前面的两篇博客中我们用C++在ROS中创建了一个发布者和接收者,并使用catkin_make构建了新的节点,下面就需要验证一下,我们写的是否正确. 首先运行roscore roscore 在使用ca ...

  9. Java 注解机制

    一.注解中的信息已经在Class中了,我们应该如何读取出来 java.lang.reflect.AnnotatedElement接口: public Annotation[] getAnnotatio ...

  10. JS中小数的差,比较大小

    var a = 0.3-0.2; -0.3; alert(a + "&" + b); if (a == b) { alert("true"); } el ...