红联Linux门户
Linux帮助

完美解决servlet传数据到绿色版的mySQL的汉字乱码问题

发布时间:2016-08-08 15:37:45来源:linux网站作者:mCodeJust
mySQL的乱码问题,已经让我头疼了好几天了,搜了很多相关资料,终于解决了。在此整理了一下给大家分享,这是绿色版的mySQL,不是安装版的,安装版的怎么弄,没试过,可能也差不多吧。
 
要解决以下问题:
tomcat编码格式
JSP 编码格式
request 编码格式
mySQL编码格式(关键)
接下来,我们将这里的所有格式都换成utf-8格式。
 
tomcat编码格式
首先我们到tomcat的根目录下,找到conf->server.xml 文件
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
 
JSP 编码格式
在jsp顶部修改,
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
 
request 编码格式
在servlet文件中,doPost中的request的编码格式设置一下,我的doGet方法是直接调用doPost方法的。
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
 
mySQL的编码格式(关键一步)
这一步我也是在搜索上找的,
首先在mySQL根目录中,把my-default.ini拷贝一份在根目录下,取名为my.ini,在my.ini中设置如下几步:
第一步:在[mysqld]下面添加 character_set_server=utf8,注意是【utf8】不是【utf-8】而且后面没有任何标点符号;
第二步:在【sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES】这句话后面再添加三行:
[client]
port=3306
default-character-set=utf8
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
然后保存一下就OK了。
完美解决servlet传数据到绿色版的mySQL的汉字乱码问题
保存以后,我们就可以直接在mySQL里面写汉字了,但是我从servlet里面传输数据,还是乱码,这应该就是数据库文件和表的原因了,于是乎我就把数据库文件删了,重新建了一个数据库文件,又创建了新表,这样传输数据就没问题啦。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/23146.html