MyEclipse连接MySQL数据库中文乱码问题
2015-09-29 18:03
344 查看
当敲到网上商城第一个添加功能也就是注册用户的时候,发现注册一个小乖到数据库是酱紫的:
为什么我成了问号?
检查Navicat字符集设置
当时我以为是我的代码程序哪出现问题了,调了半天发现然并卵。以为是敏感字符,当我尝试着输入多个汉字的时候发现输入几个中文就会出现几个问号,丫的就证明不管我输入什么中文它都要用问号来代替。这样存到数据库也就算了,当现实到界面上来的时候名字地址还是一溜儿??????……后来听小伙伴说他的也是酱,这就证明确实是我数据库或者是MyEclipse的设置问题了。好吧,去解决一下……
当时第一直觉是数据库有些问题,所以就急忙忙的去数据库插入了一条数据看是不是还是问号?因为只有category的属性最少,so在一级分类表中做了测试:
sql语句:Insert INTO category (cname) VALUES
("美食")
插入成功:
发现,并没有乱码。又细心的检查了表的设计发现也没有问题
所以应该不是数据库的问题了,那就去MyEclipse里面设置一下。在网上查了一些资料,说是要酱紫设置,小乖一一按照做了。
MyEclipse字符集设置
首先要统一MyEclipse的字符编码,步骤如下:
1、进入Window--Preferences--General--Workspace,Textfile encoding
选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8;
2、进入Window--Preferences--MyEclipse--Filesand Editors,将这个选项下面的:ASP
and PHP、CSS、DTD、HTML、JSP、XML中的字符编码全部更改为utf-8;
3、如果有必要的话,将所有JSP页面头上都加上这行代码:<%request.setCharacterEncoding("UTF-8");%>,防止页面传值的时候乱码;
4、如果有调用Servlet文件的时候,在Servlet文件中加上如下两行代码:
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
可是问题还是没有解决,只能继续查查查……
连接数据库的配置文件设置约束
据说程序在连接数据库的时候要做一种约束,在配置连接数据库的文件jdbc.properties中做如下更改:原来是酱紫的
对url进行更改,改成了酱紫之后:
其实问题是看了一声叹息的博客解决的,简单明了,只恨自己没有早点遇到你,唉……
不过这位仁兄我也是醉了,我是插入一条数据成了问号就受不了了,大哥你能连续插5条……应该向你学习这坚持的毅力……不过,小女子还是感激不尽……所以果断的关注了你的微博并设置了特别关注,发现我竟成了你的第5个粉丝,有点小凄凉……
注册,问题解决
总结:
其实数据库倒过来的时候是有两个用户的,一开始想将就着先用aaa先登录着吧,但是把自己添加到缓存只需一步,把自己添加到数据库中却是乱码的实在是不能忍受,而且后面的功能一定是还有插入和修改的功能,不能一直这样将就着走下去啊。不将就才能更好的敲代码,在敲网上商城你有没有一种一个错调不出来就不想继续往下敲的冲动的惩罚呢?还好问题都一一解决了……现在小乖特别愿意帮别人调网上商城的错,像家长一样……
为什么我成了问号?
检查Navicat字符集设置
当时我以为是我的代码程序哪出现问题了,调了半天发现然并卵。以为是敏感字符,当我尝试着输入多个汉字的时候发现输入几个中文就会出现几个问号,丫的就证明不管我输入什么中文它都要用问号来代替。这样存到数据库也就算了,当现实到界面上来的时候名字地址还是一溜儿??????……后来听小伙伴说他的也是酱,这就证明确实是我数据库或者是MyEclipse的设置问题了。好吧,去解决一下……当时第一直觉是数据库有些问题,所以就急忙忙的去数据库插入了一条数据看是不是还是问号?因为只有category的属性最少,so在一级分类表中做了测试:
sql语句:Insert INTO category (cname) VALUES
("美食")
插入成功:
发现,并没有乱码。又细心的检查了表的设计发现也没有问题
所以应该不是数据库的问题了,那就去MyEclipse里面设置一下。在网上查了一些资料,说是要酱紫设置,小乖一一按照做了。
MyEclipse字符集设置
首先要统一MyEclipse的字符编码,步骤如下:1、进入Window--Preferences--General--Workspace,Textfile encoding
选项中默认的Default(GBK)选项更改为Other,并将值设为utf-8;
2、进入Window--Preferences--MyEclipse--Filesand Editors,将这个选项下面的:ASP
and PHP、CSS、DTD、HTML、JSP、XML中的字符编码全部更改为utf-8;
3、如果有必要的话,将所有JSP页面头上都加上这行代码:<%request.setCharacterEncoding("UTF-8");%>,防止页面传值的时候乱码;
4、如果有调用Servlet文件的时候,在Servlet文件中加上如下两行代码:
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
可是问题还是没有解决,只能继续查查查……
连接数据库的配置文件设置约束
据说程序在连接数据库的时候要做一种约束,在配置连接数据库的文件jdbc.properties中做如下更改:原来是酱紫的jdbc.driver = com.mysql.jdbc.Driver jdbc.url = jdbc:mysql:///shop jdbc.user = root jdbc.password =123456
对url进行更改,改成了酱紫之后:
jdbc.url = jdbc:mysql:///shop?useUnicode=true&characterEncoding=UTF-8
其实问题是看了一声叹息的博客解决的,简单明了,只恨自己没有早点遇到你,唉……
不过这位仁兄我也是醉了,我是插入一条数据成了问号就受不了了,大哥你能连续插5条……应该向你学习这坚持的毅力……不过,小女子还是感激不尽……所以果断的关注了你的微博并设置了特别关注,发现我竟成了你的第5个粉丝,有点小凄凉……
注册,问题解决
总结:
其实数据库倒过来的时候是有两个用户的,一开始想将就着先用aaa先登录着吧,但是把自己添加到缓存只需一步,把自己添加到数据库中却是乱码的实在是不能忍受,而且后面的功能一定是还有插入和修改的功能,不能一直这样将就着走下去啊。不将就才能更好的敲代码,在敲网上商城你有没有一种一个错调不出来就不想继续往下敲的冲动的惩罚呢?还好问题都一一解决了……现在小乖特别愿意帮别人调网上商城的错,像家长一样……
相关文章推荐
- java 替换反斜杠 Unexpected internal error near index 1
- java7:数组
- MyEclipse在导入已有包时报红色下划线
- Struts 2 validator param list
- Spring整合Quartz,并持久化Job到MySQL
- WWW-SSH
- Java____内部类学习整理
- Java中字符流与字节流的区别
- Java修改数组长度
- Spring MVC入门
- java 字节流和字符流的区别
- Java中基本类型数组默认值
- 经典算法之动态规划(一):入门级动态规划
- Java基础---java虚拟机内存结构
- java 接口、抽象类、具体类、内部类、匿名内部类的区别及它们之间的关系
- Eclipse+APKTool动态调试APK
- SpringMVC
- PostgreSQL:Java使用CopyManager实现客户端文件COPY导入 .
- test8.15
- 跟踪Spring MVC的请求