org.apache.ibatis.exceptions.PersistenceException:
### Error querying database. Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class:
### The error may exist in mybatis\role.xml
### The error may involve jdbc.mapper.RoleMapper.countRoles
### The error occurred while executing a query
### Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class:
在学习最基本的Mybatis配置运行时报出了这样一个错误
(1)一开始的时候看到 Cause: java.sql.SQLException: 当机立断觉得是sql语句写错了,发现确实写错了,反复改了3次,运行仍然报这个错,反复检查了下sql语句,确信没有问题了,很奇怪为什么还是报这个错。
(2)再次看了下报错,后面还有半句话 Error setting driver on UnpooledDataSource.Cause: java.lang.ClassNotFoundException: Cannot find class: 意思是没有成功加载driver驱动。然后是为什么没成功加载,原因是没有找到类,于是去查看了下配置文件
发现了如下的一幕,driver的值居然是空的,崩溃。原因处于此处。
<dataSource type="POOLED">
<property name="driver" value=""/>
<property name="url" value="jdbc:mybatis://localhost:3306/ibatis_demo"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
(3)添加了driver的值,再次运行,又报错【### Error querying database. Cause: java.sql.SQLException: No suitable driver found for jdbc:mybatis://localhost:3306/ibatis_demo】,又回头查看了下配置文件,发现 jdbc:mybatis 写错,应该为 jdbc:mysql。
再运行,ok。