JSP页面上的中文数据传到后台乱码处理汇总
来源:互联网 发布:windows账户登录不了 编辑:程序博客网 时间:2024/05/21 08:51
SpringMVC框架下的web项目,JSP页面上的中文传到后台乱码的情况下,这儿汇总了五种可能出现乱码解决的情况,如果你的项目中也出现了乱码,可以尝试从以下方面进行解决(使用UTF-8的编码方式)。
1、web.xml中配置编码过滤器
<filter><filter-name>SetCharacterEncoding</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>SetCharacterEncoding</filter-name><url-pattern>/*</url-pattern></filter-mapping>
2、JS页面上设置pageEncoding
<a target=_blank href="mailto:%@page language='java' import='java.util.*' pageEncoding='UTF-8'%">%@page language="java" import="java.util.*" pageEncoding="UTF-8"%</a>
3、如果使用的是Ajax进行数据传输出现乱码,对Ajax传输的数据设置编码contentType:"application/x-www-form-urlencoded; charset=utf-8":
$.ajax({url : url,type : "POST",dataType : "json",async : false,contentType:"application/x-www-form-urlencoded; charset=utf-8",data : $("#communication_frm").serialize(),success : function(result) {},error : function() {}});
4、使用tomcat服务器的情况下,上面几点都设置好了还是乱码就去查看tomcat配置文件web.xml(路径:tomcat/conf/web.xml),设置tomcat的编码过滤器为UTF-8,配置位置如下:
<!-- A filter that sets character encoding that is used to decode --> <!-- parameters in a POST request --> <filter> <filter-name>setCharacterEncodingFilter</filter-name> <filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter>
5、tomecat服务器的配置文件中,设置编码过滤器前面有一行注释,parameters in a POST request,从我遇到的实际情况来看确实是这样的,这个过滤器只对post方式发送的请求中的数据有效,而对get请求中的参数是无效的。
get请求方式发送的中文数据(url拼接)在前面都设置好后还会乱码的话,进入tomcat的配置文件server.xml(路径:tomcat/conf/server.xml),给
<Connector executor="tomcatThreadPool" port="1522" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
添加URI的编码属性:URIEncoding="UTF-8"即改为:
<Connector executor="tomcatThreadPool" port="1522" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
目前我所遇到的乱码情况用这几种方式都能解决,如果还有其他情况欢迎告知补充。
0 0
- JSP页面上的中文数据传到后台乱码处理汇总
- jsp 页面中文 传到后台 乱码问题解决
- 前台页面传到后台的中文数据出现乱码问题
- 页面参数是中文传到后台乱码的一些小处理
- jsp页面传到后台的参数为乱码
- 关于jsp页面上中文数据传递到后台成乱码的解决方法
- 从jsp页面传到后台乱码问题
- js操作从后台传到jsp页面上的list数据
- 前台传到后台的数据乱码
- 解决页面传到后台含中文参数时会乱码问题
- jsp传到数据库中乱码的处理
- 如何把页面的数据传到后台
- JSP页面中文乱码的处理
- 中文参数传到后台乱码
- html传到后台的中文乱码(后台为java)
- html传到后台的中文乱码(后台为java)
- 将页面汉字显示正常的属性传到后台变成乱码的处理方法!
- struts中把后台对象传到前台jsp页面上的方法
- win7系统升级ie11,在KB2729094更新失败时的解决方法
- B树,B+树,B*树以及R树的介绍
- 杨辉三角 HDU2032
- 业务知识——上诉、抗诉、起诉、自诉的区别
- Python处理验证码第一篇(pytesser初探及报错处理)
- JSP页面上的中文数据传到后台乱码处理汇总
- leetcode:二叉树之Construct Binary Tree from Preorder and Inorder Traversal
- 二维树状数组
- PL/SQL实例 navicat创建存储过程
- 一个关于椭圆曲线密码学的初级读本
- Android绘制间隔平行四边形虚线
- bootstrap table + spring + springmvc + mybatis 实现从前端到后端的表格分页
- 注册开发者账号出现Sorry, you can’t enroll at this time.
- SQL将一行多列数据合并成 一列