Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNot

第一次写mybatis报错如下:

org.apache.ibatis.exceptions.PersistenceException: 
### Error querying database.  Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: ${Driver}
### The error may exist in sqlmap/User.xml
### The error may involve test.findUserById
### The error occurred while executing a query
### Cause: java.sql.SQLException: Error setting driver on UnpooledDataSource. Cause: java.lang.ClassNotFoundException: Cannot find class: ${Driver}

在学习最基本的Mybatis配置运行时报出了这样一个错误

(1)一开始的时候看到  Cause: java.sql.SQLException: 觉得是sql语句写错了,经过检查sql并没有错误

(2)再次看了下报错,后面还有半句话 Error setting driver on UnpooledDataSource.Cause: java.lang.ClassNotFoundException: Cannot find class:  意思是没有成功加载driver驱动。然后是为什么没成功加载,原因是没有找到类,于是去查看了下配置文件

<environment id="development">

			<!-- 使用jdbc事务管理 -->
			<transactionManager type="JDBC" />
			<!-- 数据库连接池 -->
			<dataSource type="POOLED">
				<property name="driver" value="${com.mysql.jdbc.Driver}" />
				<property name="url"
					value="jdbc:mysql://localhost:3306/student?characterEncoding=utf-8" />
				<property name="username" value="root" />
				<property name="password" value="root" />
			</dataSource>
		</environment>

经过再三查看错在

<property name="driver" value="${com.mysql.jdbc.Driver}" />

解决办法:将com.mysql.jdbc.Driver独立出来,再引用给driver,如下,解决报错

<configuration>
    <properties>
        <property name="driver" value="com.mysql.jdbc.Driver"/>
    </properties>

猜你喜欢

转载自blog.csdn.net/cat18292575042/article/details/81844972