首先先检查mapping.xml中mapper类的包名是否正确,查询语句返回参数设置是否正确 检查mapper中的方法名与mapping中的是否一致 检查application配置文件中mybatis的配置,classpath后没有 mapping.xml放在resources目录下 以上问题无误后,可以通过单元测试查看数据库连接是否有问题,如存在问题。
Exception in thread "main" org.apache.ibatis.exceptions.PersistenceException: ### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure
1.检查你的数据库连接地址(配置文件中的url)是否正确.
2.有可能是由mysql数据库的配置引起,mysql8前后的版本不一样
driver=com.mysql.jdbc.Driver //mysql8之前 driver=com.mysql.cj.jdbc.Driver //mysql8之后
3.url地址的问题,网上有各种各样的方法
- 配置获取连接等待超时的时间
- 连接数配置 空闲最小 空闲最大 最多连接数 初始化连接数
- 检测sql 用连接,还连接,空闲时三个检测
- 各种问题的答案,但是对于我出现的问题,只是url地址问题,并不需要过多的设置,每个人数据库不一样,和idea的编码也不一样
url=jdbc:mysql://localhost:3306:/datasource?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC url=jdbc:mysql://localhost:3306/datasource?characterEncoding=utf-8&useSSL=true
useSSL问题可以先设置true未出现报错就不用设置false,出现问题后再设置成false。



