Spring MVC —— form表单post提交出现乱码
主要原因是:页面提交时,使用<contentType:utf-8/>格式,而服务端HttpMessageConverter解码时使用其它格式解码(如:ISO-8859-1)导致
解决方案:在Servlet中设置CharacterEncoding为UTF-8格式。
方法一:在Web.xml中加入Spring的字符集过滤器(已测)
<filter><filter-name>CharacterEncodingFilter</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>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern> </filter-mapping>
encoding
字符集,将request字符集设置成encoding指定格式(相当于request.setCharacterEncoding)
forceEncoding
强制字符集设置,主要用来设置response字符集是否也是encoding指定格式
当设置为true时,相当于request.setCharacterEncoding + response.setCharacterEncoding
当设置为false时(默认),相当于request.setCharacterEncoding
加入后相当于在servlet中加入下面代码
request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8");
方法二:手动写Filter(未测)
对每个访问进行拦截,并执行下列代码
request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8");
方法三:设置HttpMessageConverter实现类的解码方式(未测试)
<mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/plain;charset=UTF-8</value> <value>text/html;charset=UTF-8</value> </list> </property> </bean> <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>application/json; charset=UTF-8</value> <value>application/x-www-form-urlencoded; charset=UTF-8</value> </list> </property> </bean> </mvc:message-converters> </mvc:annotation-driven>
转载于:https://www.cnblogs.com/yifanSJ/p/9226801.html
Spring MVC —— form表单post提交出现乱码相关推荐
- Spring MVC与表单日期提交的问题
Spring MVC与表单日期提交的问题 spring mvc 本身并不提供日期类型的解析器,需要手工绑定, 否则会出现非法参数异常. org.springframework.beans.BeanIn ...
- Spring MVC的表单控制器——SimpleFormController .
http://blog.csdn.net/rj042/article/details/6907274 年7月微软MVP申请开始啦! CSDN十大风云博客专栏评选结果公布! Spri ...
- Spring MVC:表单处理卷。 2 –复选框处理
很难想象现代Web应用程序中没有表单复选框的情况. 在之前的一篇文章中,我写了有关Spring MVC中的表单处理的文章 ,作为本系列文章的续篇,我将写有关Spring MVC表单的文章,尤其是关于复 ...
- 中input标签赋值_Java程序员:Spring MVC JSP表单标签示例
Spring MVC的表单标签为Java程序员提供了许多额外的支持.例如数据绑定,允许自动设置数据并从Java对象中检索数据. 从2.0版本开始,Spring提供了一组全面的数据绑定感知标记,用于在使 ...
- Spring MVC:表单处理卷。 5 –选择,选项,选项标签
下拉列表是Web表单中最常见的元素之一. 在HTML中,可以使用适当的标签创建此类控件: <form:select> –下拉列表的父标签和<form:option> – < ...
- Spring MVC:表单处理卷。 4 –单选按钮
在软件开发领域,单选按钮是图形用户界面的重要组成部分. Spring MVC标签库为此表单元素提供了特殊标签. 更确切地说,有两个标签用于此目的:单选按钮,单选按钮. 两者对于特定任务都是有用的. 如 ...
- Spring MVC:表单处理卷。 3 –复选框处理
我已经发布了有关使用Spring MVC标签库处理'checkbox'标签的帖子. 现在,我要开发此主题并继续使用"复选框"标签. 它并不难,但是在某些情况下,您最好使用它. 在本 ...
- Spring MVC:表单处理卷。 1个
Spring MVC是Spring Framework的一部分,其主要目的是使Web开发更加简单,便捷和轻松. 与表单的交互是或多或少现代Web应用程序的一部分. Spring MVC允许您以非常严格 ...
- js实现Form表单submit提交截获数据(各浏览器通用)
js实现Form表单submit提交截获数据(各浏览器通用) js实现Form表单submit提交截获数据(各浏览器通用) No Comments | js , 安全 , PHP | by calms ...
最新文章
- 取消Exchange数据库的自动分配功能
- LeetCode 多线程 1117. H2O 生成
- JavaWab项目1 ---- 技术架构
- 2012禁用ip隧道 win_IMCP协议的魅力——IMCP隧道
- 查询同一组的最大最小值及明细
- a4如何打印双面小册子_a4如何排版打印双面小册子?
- 游戏角色命名与游戏风格
- dw怎么做html鼠标变化,dw鼠标经过单元格变色 DW 鼠标经过表格 背景变色
- ChineseLunisolarCalendar 农历日期
- 用JAVA 创建自己的 A4 打印语言
- 数据结构-树的进阶-串联各科知识
- 二十四式长生图——清手抄本(扫描版)
- [BUU刷题记录]day01-起步
- 【数学建模】CUMCM-2013B 碎纸片的拼接复原 解题思路整理
- 为什么0x100是256个字节、0x400是1KB、0x800是2KB、0x1000是4KB?
- 打不开eclipse 由于它来自身份不明的开发者
- 一例所有文件都打不开的数据恢复过程
- unet服务器向客户端发消息,unet 服务器客户端不同步
- ArcGIS中栅格计算器常用函数的使用
- 设计模式之 — 抽象工厂模式
热门文章
- memcached运行情况监测
- Docker到底是什么?为什么它这么火!
- 使用 Responsive Elements 快速构建响应式网站
- 如何在Scala中使用条件表达式 .
- 苹果发布新应用Find My Friends,轻松追踪朋友和家人的所在位置
- [wxWidget系列] wxWidget的事件机制
- Hotmail怎么进不去?!
- Flask + Vue 搭建简易系统步骤总结
- mysql中索引创建 查看和删除语句_MySQL索引的创建、删除和查看(学习中)
- 【iOS】iOS开发之使用Mac自动操作制作@1x@2x@3x图片(切图)