Spring MVC+MySQL保存中文变成乱码
环境:MySQL,Spring MVC3.2.0,jQuery v2.0.3,使用JdbcTemplate访问数据库,相当于全套Spring解决方案。
现象
直接使用表单POST,或者使用jQuery POST数据到服务端,在Controller中获得的中文字符串皆为乱码。到达JdbcTemplate插入或者更新数据库时,自然也是乱码。
解决措施
修改web.xml,增加编码过滤器,如下(注意,需要设置forceEncoding参数值为true)
<filter>
<filter-name>encodingFilter</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>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
效果
在Controller中获得的中文字符串已正常。但使用JdbcTemplate插入或者更新数据库后,依然是乱码。可判定是写入数据库时,出现编码问题。
解决措施
修改applicationContext.xml文件,设置MySQL访问的url为:url="jdbc:mysql://localhost:3306/xxx?useUnicode=true&characterEncoding=UTF-8"
效果
写入数据库也已经正常,读取和在网页上显示正常。
参考
http://blog.csdn.net/xuechongyang/article/details/8283924
http://hi.baidu.com/fuzk2008/item/956351c17a47d653bcef6956
Spring MVC+MySQL保存中文变成乱码的更多相关文章
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题
		
spring mvc使用的默认处理字符串编码为ISO-8859-1 解决方法: 第一种方法: 对于需要返回字符串的方法添加注解,如下: @RequestMapping(value="/use ...
 - Spring MVC @ResponseBody返回中文字符串乱码问题
		
朋友做小项目练手的时候遇到的,着实让他郁闷够呛..这个问题的确很恶心.. 项目中引用的json包,直接用@ResponseBody注解返回json字符串..有关这个的乱码问题网上很多,各种花样各种转码 ...
 - mysql保存中文乱码的原因和解决办法
		
当你遇到这个mysql保存中文乱码问题的时候,期待找到mysql保存中文乱码的原因和解决办法这样一篇能解决问题的文章是多么激动人心. 也许30%的程序员会选择自己百度,结果发现网友已经贴了很多类 ...
 - Spring MVC中处理中文问题
		
之前练习过提交表单数据,但是提交的数据包含中文,这一篇练习如何处理中文.在Spring MVC中处理中文问题和Filter处理中文问题是一样的手段 @ 目录 Filter addProduct.jsp ...
 - spring mvc get请求中文乱码问题
		
使用Spring MVC进行get请求时发现get请求带上中文参数,后台收到的是乱码,即使加了encoding filter也没用. 原因是,encoding filter 是针对post请求的,to ...
 - Spring MVC @ResponseBody响应中文乱码
		
问题:在前端通过get请求服务端返回String类型的服务时,会出现中文乱码问题 原因:由于spring默认对String类型的返回的编码采用的是 StringHttpMessageConverter ...
 - spring mvc form表单提交乱码
		
spring mvc form表单submit直接提交出现乱码.导致乱码一般是服务器端和页面之间编码不一致造成的.根据这一思路可以依次可以有以下方案. 1.jsp页面设置编码 <%@ page ...
 - Spring mvc get和post传值乱码问题
		
1.url拼值 传单值 对象 list map都是用json的格式传入后台 <%@ page language="java" contentType="text/ ...
 - Spring MVC整合fastjson、EasyUI乱码问题
		
一.框架版本 Spring MVC:spring-webmvc-4.0.0.RELEASE fastjson:fastjson-1.2.45 EasyUI:1.5 二.乱码现象 Controller调 ...
 
随机推荐
- Java数据结构和算法(三)顺序存储的树结构
			
Java数据结构和算法(三)顺序存储的树结构 二叉树也可以用数组存储,可以和完全二叉树的节点一一对应. 一.树的遍历 // 二叉树保存在数组中 int[] data; public void preO ...
 - mvc 验证封装到某个特征类里[特性的使用]
 - 编写JavaScript 代码的5个小技巧
			
1.Array.includes 与条件判断 一般我们判断或用 || // condition function test(fruit) { if (fruit == "apple" ...
 - sdkbox 接facebook
			
详情参见:http://sdkbox-doc.github.io/en/plugins/facebook/v3-js/#manual-integration 一步不落然后 *** Terminatin ...
 - yii2 beforeAction 重定向问题
			
不跳转代码:return $this->redirect('http://www.yiichina.com/'); 跳转代码:return $this->redirect('http:// ...
 - Linux命令:sed
			
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
 - HDU 2504 又见GCD (最大公因数+暴力)
			
题意:是中文题. 析:a和c的最大公因数是b,也就是说,a和c除了b就没有公因数了.再说就是互质了. 所以先把a除以b,然后一个暴力n,满足gcd(a, n) =1,就结束,就是n倍的c. 代码如下: ...
 - Redis java client ==> Jedis
			
https://github.com/xetorthio/jedis Jedis is a blazingly small and sane Redis java client. Jedis was ...
 - autolayout之后获取uiview的frame
			
这个只要一行代码就搞定了.详细请看: In order to get the right frame/bounds of your UIImageView after resizing, you ne ...
 - (连通图 模板题 出度和入度)Network of Schools--POJ--1236
			
链接: http://poj.org/problem?id=1236 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82833#probl ...