No suitable driver

最近在做一个慕课网的练习,前期一直跟着视频里面的内容去写!无论是依赖、配置文件和Java代码。到后面写完第一个接口后发现跟数据库连不上。纠结了很久不得已请教大神才发现问题的所在!

在此记录一下:

第一次测试报了这个错误,我检查了一下我的配置文件,当时的配置文件内容如下:

server.port=8082
server.servlet.context-path=/demo

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=/localhost:3306/demo?useUnicode=true&characterEncoding=utf8&useSSL-false
jdbc.username=root
jdbc.password=root

#Mybatis
mybatis_config_file=mybatis-config.xml
mapper_path=/mapper/**.xml
entity_package=com.imooc.demo.entity

起初判定问题出在jdbc.driver那里,因为慕课的那个项目距离现在已经比较久了,所以可能存在版本迭代的问题。最后我按网上查到的答案,修改了jdbc.driver

jdbc.driver=com.mysql.cj.jdbc.Driver

修改完后再次运行,运行时无报错,唯有在输入网址进行测试的时候才会开始报错。

以下是第二次报错。

与第一次报错相比,很明显解决了一个问题。

但是此次报错在网上都没有搜到具体的解决方法。无奈只能求救大神。

大神说是我配置文件中jdbc.url的问题,我配置文件中的写法是版本比较旧的写法了!于是让我去搜了mysql8.0的url写法,参照网上的写(此处顺带把mysql依赖的版本更新为8.0版本):

原来的写法是:

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=/localhost:3306/demo?useUnicode=true&characterEncoding=utf8&useSSL-false

修改后的写法是:

jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/demo?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC&rewriteBatchedStatements=true

这次修改后再运行就成功了!

本次的错误总结出2点:

1.出现这种类似的问题的时候要优先检查配置文件,检查driver和url的书写格式。版本的迭代会导致书写格式不一致。

2.依赖跟所书写的版本格式要对得上号!别变成依赖是7.0然后网上搜的又是8.0的书写格式,如果版本更新没有更新书写格式还好,不然一样会报错。书写格式和依赖版本一定要相对应。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值