这个是我之前的iteye号上的,现在放在这个号里面,方便整理
最近要做毕业设计,以前用的数据库是oracle,基本上没出现过中文乱码的问题。可是毕业设计人在外地,带的笔记本比较垃圾,oracle根本带不起。一个eclipse加上一个火狐cpu就已经跑到90%了。所以最后决定用mysql数据库。前台用的是jsp,使用的编码格式是utf-8。
不过mysql的中文乱码让我纠结了许久。经过一番查询,最终解决了。
一:查看编程环境是否为utf-8
方法:右键项目名称-属性 找到文本文件编码 选择utf-8.
二:设置jsp页面的编码格式:
方法:contentType="text/html; charset=utf-8"
meta http-equiv="Content-Type" content="text/html; charset=utf-8"
三:设置request和response的编码格式:
方法:response.setContentType("text/html ;charset=utf-8");
request.setCharacterEncoding("utf-8");
四:编写过滤器
五:连接数据库的方式改为:jdbc:mysql://localhost/databasename?useUnicode=true&characterEncoding=UTF-8
经过以上5步,如果问题依然没有解决的话,则有可能是出现在mysql服务器上。
数据库方面
一:首先查看数据库字符集设置
方法:set character_set_client=utf8;
用这个方法可以看到几个字符集。
然后用以下命令修改
set character_set_client=utf8;
set character_set_connection=utf8;
set character_set_database=utf8;
set character_set_results=utf8;
set character_set_server=utf8;
当然也可以在mysql的安装目录下,一般在c盘中的 my.ini下修改凡是看到字符集有关的都修改成utf8
做到这步,基本上从数据库中取出的数据都是中文,但是还是有可能会出现问题,比如在用dos打开的时候,中文依然显示为乱码,而且不能在dos环境下用sql语句插入中文字符。
这时,要把set character_set_results=utf8; 改为 set character_set_results=gbk;
set character_set_client=utf8; 改为 set character_set_client=gbk;
这样,基本就能解决了。
分享到:
相关推荐
MySQL中文乱码问题解决方案,彻底解决mysql中的中文乱码问题
MySql中文乱码问题 Mysql建库建表 Mysql建库建表中文乱码问题 Mysql中文乱码问题解决方案
史上最全的PHP+MySql中文乱码解决方案
jsq+mybatis+mysql中文乱码的详细方案。
mysql中文乱码解决方案
Mysql中文乱码问题完美解决方案
MySQL乱码解决方案数据库乱码MySQL乱码解决方案数据库乱码
MySQL数据库系统中文乱码问题及解决方案.pdf
mysql出了乱码可查,方便快捷,好用。jsp开发的过程中遇到的数据库端乱码解决办法都在这里了,跑不出去
解决mysql乱码问题。主要是数据库查询出数据中文为问号???的问题。
主要是数据库方面的编码修改,jsp还有tomcat中的修改很简单,这里不做赘述了。
提供解决mySQl中文乱码的终极解决方案
mysql乱码问题解决方案,三套方案希望可以帮助到大家!!!!
JSP与MySQL交互的中文乱码解决方案
Mysql中文乱码问题完美解决方案.docx
mysql乱码解决方案,很详细的权威说法
Powedesigner 导入 Mysql 以及反向 乱码及其解决方案
解决PHP+mysql处理中文乱码的独家方案
MySQL显示乱码解决方案,本例为MySQL 5.5版本,其他版本大同小异,皆可参考。