在idea配置javaweb环境时遇到的坑.......
前言
一、连接数据库概述
在idea里有个database 通常在这里,一开始我还鼓捣了一下这个,但是最终发现,如果你不想直接在idea里直接操作数据库的话,这个好像不用管,直接把 这个导入Modules就可以了, like this 直接将jar导入就行的操作的前提是你从eclipse导入的代码已经写好连接数据库的代码了。
如果你配数据配到绝望,那你不妨试试自己先创一个比较小的项目,单纯连一个数据库。 点击链接: .
二、配数据时遇到的小问题
说明一下,我的项目中已经把数据库连接的代码写好了,而且绝对正确,最多只是密码有错,所以我不考虑database组件了
1.Server returns invalid timezone. Need to set‘serverTimezone’property
时区问题 解决: serverTimezone试试UTC或者GMT 说到url就说一下jdbc.properties问题
2.java读取不了jdbc.properties
类似这种问题,然后我查代码,设断点发现, Connection为Null,赋值的时候不会报错,是使用的时候报错了。发现是数据库连接的问题。 然后意识到可能是java读取不了jdbc,我直接将url,root,password放入getConnection中,果然连上了。
2.Unable to load authentication plugin ’ caching_sha2_password’
mysql8以上 从原来的 mysql_native_password 更改为 caching_sha2_password 可以参考一下 .
这可以解决身份验证的问题,但是后面报了其他错误所以我直接重装了mysql5 重装mysql之前的操作 .
2.Access denied for user ‘root’@‘localhost’ (using password: YES)
我实践过的方法,说出来很简单,但是你不知道就很烦… 好了不废话了,密码,url,驱动去看看,估计错了。
我这里就说一下怎么改mysql的密码吧 最简单的方法: 这一波我不解释了
3.mysql服务启动后停止
idea连接数据库一直出错,不知道啥原因,开启mysql服务之后,明明没问题呀,然后再看一眼,咦,咋关了!? 解决方法: .
3.mysql编码格式问题,导致中文查询乱码
当时我显示数据库连上了,但是连上后关于数据库的第一行代码就报错。 然后各种找问题觉得比没有错误呀,后来我将模糊查询的关键词换了一个,就对了。才意识到是中文乱码的原因(其实设断点,debug一下是可以看出来的,比如: key = ’???’ 解决方法: 根据图中的my.ini路径找到my.ini。 第一个路劲,ProgramData是隐藏文件 打开我的电脑,点击菜单里的查看,把隐藏的项目前面打勾,使隐藏文件显现。
[mysqld] character-set-server=utf8mb4 collation-server = utf8mb4_unicode_ci init_connect=SET NAMES utf8mb4
[client] default-character-set=utf8mb4
[mysql] default-character-set=utf8mb4
在mysqld mysql client下面添加以上(如果有的话,就修改)
总结
好了,idea告一段落了。大家有问题,有纠正,由讨论欢迎留言呀