mysql读取数据库后乱码

chinese120 2017-02-20 09:00:46
,求救,不知道哪里原因出现这个问题了,tomcat的server改了,web.xml也改了
...全文
716 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhujinqiang 2017-02-22
  • 打赏
  • 举报
回复
楼主贴的url那里, utf后面少了一个"-"号。 utf-8
chinese120 2017-02-22
  • 打赏
  • 举报
回复
引用 18 楼 actionaction0717 的回复:
在后台查询的时候在设置下UTF-8编码试试
我后台重新设置个了编码String name =new String(listUser.get(0).getUsername().getBytes("ISO-8859-1"),"utf-8");例如这样,读取出来之后能转回中文,但是jsp那边一样是乱码,页面也设置了utf-8了,而且,我不可能是每个方法数据都这样转,所以问题不在这里,java和jsp文件都设置了utf-8默认编码
chinese120 2017-02-22
  • 打赏
  • 举报
回复
引用 17 楼 zhujinqiang 的回复:
楼主贴的url那里, utf后面少了一个"-"号。 utf-8
这里没错,mysql这里是没-得
actionaction0717 2017-02-22
  • 打赏
  • 举报
回复
在后台查询的时候在设置下UTF-8编码试试
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 11 楼 chinese120 的回复:
[quote=引用 10 楼 a241903820 的回复:] 很可能你新建库或表的时候已经乱码了, 建立完毕之后,你再设置编码已经没用了, 可以尝试一下把库和表都删除后, 把数据库所有编码都设置为utf8,然后重新建立库和表。
我建立表的时候编码都是设置utf-8得[/quote] 会不会装mysql的时候错的?
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 10 楼 a241903820 的回复:
很可能你新建库或表的时候已经乱码了, 建立完毕之后,你再设置编码已经没用了, 可以尝试一下把库和表都删除后, 把数据库所有编码都设置为utf8,然后重新建立库和表。
我建立表的时候编码都是设置utf-8得
李大白白 2017-02-21
  • 打赏
  • 举报
回复
很可能你新建库或表的时候已经乱码了, 建立完毕之后,你再设置编码已经没用了, 可以尝试一下把库和表都删除后, 把数据库所有编码都设置为utf8,然后重新建立库和表。
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 7 楼 qq_32866811 的回复:
在数据库文件中设置默认编码字符集,或者建表时候增加编码
都设置了utf-8或者gbk了
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 6 楼 qq_30831935 的回复:
[quote=引用 5 楼 chinese120 的回复:] [quote=引用 4 楼 qq_30831935 的回复:] 怎么连接数据库的? jdbc的话 试试在后面加上 jdbc:mysql://127.0.0.1:3306/表名?useUnicode=true&characterEncoding=utf-8
这个也加了[/quote] 右击工程,properties ---> source 看看工程的编码呢 想不到其他地方还有编码问题了。。[/quote] 已经设置utf-8了,我想得到的都设置了。。
zzy2017222 2017-02-21
  • 打赏
  • 举报
回复
你的servlet.xml文件配置了吗
我是海亮啊 2017-02-21
  • 打赏
  • 举报
回复
在数据库文件中设置默认编码字符集,或者建表时候增加编码
鱿鱼ing 2017-02-21
  • 打赏
  • 举报
回复
引用 5 楼 chinese120 的回复:
[quote=引用 4 楼 qq_30831935 的回复:] 怎么连接数据库的? jdbc的话 试试在后面加上 jdbc:mysql://127.0.0.1:3306/表名?useUnicode=true&characterEncoding=utf-8
这个也加了[/quote] 右击工程,properties ---> source 看看工程的编码呢 想不到其他地方还有编码问题了。。
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 4 楼 qq_30831935 的回复:
怎么连接数据库的? jdbc的话 试试在后面加上 jdbc:mysql://127.0.0.1:3306/表名?useUnicode=true&characterEncoding=utf-8
这个也加了
鱿鱼ing 2017-02-21
  • 打赏
  • 举报
回复
怎么连接数据库的? jdbc的话 试试在后面加上 jdbc:mysql://127.0.0.1:3306/表名?useUnicode=true&characterEncoding=utf-8
chinese120 2017-02-21
  • 打赏
  • 举报
回复
人工置顶人工置顶
chinese120 2017-02-21
  • 打赏
  • 举报
回复
,发现Navicat的编码和mysql编码不一致。。用其实你都可以用命令修改的,具体查手册:
比如,你需要编码是x,那么简单命令如下
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;这个方法改可以,但是一关闭Navicat又变回来了
chinese120 2017-02-21
  • 打赏
  • 举报
回复
引用 13 楼 m2200 的回复:
这个帖子是我以前回复一个人的,你可以参考下:

http://bbs.csdn.net/topics/392053374




我的是这样的,和你的不同,我之前项目都是这么写都正常
爱睡觉的阿狸 2017-02-21
  • 打赏
  • 举报
回复
这个帖子是我以前回复一个人的,你可以参考下: http://bbs.csdn.net/topics/392053374
chinese120 2017-02-20
  • 打赏
  • 举报
回复
引用 1 楼 qq_34893693 的回复:
创表时,设制表的编码 例如 create table tb_master( id int primary key auto_increment, name varchar(20) null, password varchar(20) null, money int )default charset=utf8;
都有的
傻傻的少年 2017-02-20
  • 打赏
  • 举报
回复
创表时,设制表的编码 例如 create table tb_master( id int primary key auto_increment, name varchar(20) null, password varchar(20) null, money int )default charset=utf8;

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧