解决中文数据存入数据库乱码, 页面乱码等问题

当数据库或页面出现中文乱码时通常需要从以下几个地方进行分析

1.页面编码

2.数据库连接语句(如果数据连接的properties文件编码与数据库编码格式不一致会导致存入数据库的数据乱码不论中文英文同意乱码)

设置characterencoding为UTF-8 如jdbc.mysql.url=jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=UTF8
如果使用Hibernate,那就把所有的配置文件头部的编码格式改成UTF-8。
3.Tomcat

为了保证get/post数据都采用相同的UTF8编码,我们在server.xml中进行了如下设置:
4. struts2配置

struts2在配置struts.properties文件中加上struts.i18n.encoding=UTF-8 或者在struts.xml里加上
在web.xml文件里配置filter

encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding GBK encodingFilter /*

5.数据库(mysql)

可以先输入查询语句SHOW VARIABLES LIKE ‘character_set_%’;,查看所有的编码是否是UTF-8.

如果不是可以使用Server Instance Config 把默认的字符集设置为utf-8或者修改/MySQL/MySQL Server 5.0/my.ini中的default-character-set=gbk

character-set-server=gbk;

然后重新启动mysql的服务就行了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值