学习笔记-------Mybatis连接数据库中的错误
在mybatis-config.xml中,配置数据库连接环境:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC" />
<!-- 配置数据库连接信息 -->
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/students?useSSL=true&serverTimezone=UTC&characterEncoding=utf-8" />
<property name="username" value="root" />
<property name="password" value="" />
</dataSource>
</environment>
</environments>
<mappers>
<!-- 注册User.xml文件-->
<mapper resource="sqlmap/User.xml"/>
</mappers>
</configuration>
运行测试函数进行连接测试,出现如下错误提示:
org.apache.ibatis.exceptions.PersistenceException:
Error building SqlSession.
Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 21; columnNumber: 102; 对实体 "characterEncoding" 的引用必须以 ';' 分隔符结尾。
解决方法
mybatis 的配置文件中,这里 url 中的 ’ & ’ 符号应当写成 ‘& ;’,修改后的 url 如下:
<property name="url" value="jdbc:mysql://localhost:3306/students?useSSL=true&serverTimezone=UTC&characterEncoding=utf-8" />
这样就可以正常连接了。