spring mvc开发过程中的乱码问题

在保证jsp,xml,数据库,编辑器编码一致的情况下。

1,用户输入中文,后台接收到也是中文,但是保存到数据库时乱码,

解决方法:

链接数据库的url="jdbc:mysql://localhost:3306/lr"

加上编码设置,修改为:url="jdbc:mysql://localhost:3306/lr?characterEncoding=UTF-8"

且在配置数据库连接池时加上一个配置项:useUnicode="true"

2,用户输入中文,get方式请求后台获取内容乱码,这个一般情况下是服务器的编码设置的问题,

解决方法:

在服务器的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"/>

3,ajax后台返回到前台时中文乱码,

解决方法:

在spring MVC的Controller:

@RequestMapping(value = "xxxx", method = RequestMethod.GET)

public @ResponseBody String a(@RequestParam("email") String email) {


    return "我是返回给前台的中文字符串";
}

加上produces = "text/html;charset=UTF-8",修改为:

@RequestMapping(value = "xxxx", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")

public @ResponseBody String a(@RequestParam("email") String email) {


    return "我是返回给前台的中文字符串";
}

以上就是目前遇到的乱码问题解决办法,至于其他的乱码,大部分可能是前后台编码不同意造成的,

只要一开始将显示层,配置信息,编辑器和数据库等各处的编码方式设置统一了,遇到乱码问题还是很少的。

 

posted @ 2016-01-22 16:33  鸡心扒饭  阅读(327)  评论(0)    收藏  举报