彻底解决mybatis 插入数据中文后显示问号(?)的问题

在spring+mybatis开发中 遇到插入中文字符数据变成问号的问题

1、一般第一步可能会去看spring项目中的web.xml是否设置了字符过滤器


但是一看代码已经拷贝过来了啊  ┭┮﹏┭┮

2、那会不会是tomcat中没有设置字符的问题?于是打开server.xml


空欢喜 还是设置过了啊 ┭┮﹏┭┮


3、对了还有个地方可能出问题 那就是数据库连接文件中 jdbc_url连接地址后面是否加了utf8 


这 这 这 也没毛病啊 ┭┮﹏┭┮

4、会不会是写业务代码的时候 复制 粘贴的时候没注意


但是一看debug信息 最后执行的sql传过去的都是正确的中文啊 ┭┮﹏┭┮

5、这时候基本确定问题是创建数据库的时候 手滑了 字符集选错了 


见鬼了 问题在哪呢?┭┮﹏┭┮

6、数据库也没问题 那真解决不了了 ?网上看到倒是还有方法 就是改数据库配置文件

这也太高大上了吧 之前可重来没干过这玩意啊 还能怎么办  试试呗

首页在cmd中输入mysql -u ...  但是 它提示不是内部或外部命令,也不是可运行的程序或批处理文件。

这可能是环境变量中没有配吧 那就去配置一下


然后再cmd中输入mysql -u root -p 输入密码 进去之后 输入

show variables like 'character%'; 
记得加分号后 敲回车

看到类似这样的(这个当时自己的忘记截图了,这个是网上搜的) 只有一个utf8 其他不知道什么意思 但是第三个 database这个名字很熟悉 数据库的意思嘛 它居然不是utf8 这可能有问题(latin1就是ISO-8859-1) 


改这个字符可就得修改mysql的配置文件 my.ini


把这两个地方的字符串改成utf8 保存一下 然后需要重启

重启 window下就是先停止 后启动  net stop mysql 和 net start mysql

重启的时候可能又有问题了 


还拒绝访问了 这是因为当前用户不是管理员  需要以管理员的身份运行才可以重启


然后停止和启动


再重启 tomcat服务器 然后添加数据 


猜你喜欢

转载自blog.csdn.net/l1509214729/article/details/80781740