介绍
在本项目中,你将学习如何使用属性来修改基于 MyBatis 的应用程序中的数据库配置。MyBatis 是一个流行的 Java 持久化框架,它简化了 Java 应用程序与数据库之间的交互。
👀 预览
-------------------------------------------------------
T E S T S
-------------------------------------------------------
运行 org.labex.test.MyBatisTest
数据删除成功
数据插入成功
[课程编号:1 课程名称:数据结构 教师:约翰·史密斯,课程编号:2 课程名称:Java 教师:玛丽·约翰逊,课程编号:3 课程名称:Python 教师:大卫·布朗,课程编号:4 课程名称:C++ 教师:詹妮弗·戴维斯,课程编号:6 课程名称:C 教师:迈克尔·威尔逊,课程编号:8 课程名称:人工智能 教师:艾米丽·汤普森]
数据更新成功
测试运行:4,失败:0,错误:0,跳过:0,耗时:2.1 秒
🎯 任务
在本项目中,你将学习:
- 如何将数据库配置从
mybatis-config.xml文件移动到db.properties文件。 - 如何修改
mybatis-config.xml文件以使用db.properties文件中定义的属性来配置数据库连接。 - 如何通过运行提供的测试用例来验证应用程序的功能。
🏆 成果
完成本项目后,你将能够:
- 将数据库配置与 MyBatis 配置文件分离。
- 在基于 MyBatis 的应用程序中使用属性来配置数据库连接。
- 在 MyBatis 配置文件中导入并使用属性值。
- 通过运行测试用例来确保应用程序的功能。
将数据库配置移动到 db.properties 文件
在本步骤中,你将学习如何把数据库配置从 mybatis-config.xml 文件移动到 db.properties 文件。
- 打开位于
MyBatisPropertiesProject/src/main/resources目录下的db.properties文件。 - 向
db.properties文件中添加以下属性:
## 数据库配置
## 数据库驱动类名
driver=com.mysql.cj.jdbc.Driver
## 数据库连接 URL
url=jdbc:mysql://localhost:3306/MyBatisDemo?characterEncoding=utf-8
## 数据库用户名
username=root
## 数据库密码
password=
## 映射器配置
## 包含 MyBatis 映射器接口的包
mapper.package=org.labex.mapper
这些属性定义了数据库驱动、连接 URL、用户名和密码,以及包含 MyBatis 映射器接口的包。
修改 mybatis-config.xml 文件以使用属性
在本步骤中,你将学习如何修改 mybatis-config.xml 文件,以使用 db.properties 文件中定义的属性。
- 打开位于
MyBatisPropertiesProject/src/main/resources目录下的mybatis-config.xml文件。 - 在文件开头添加以下行,以从
db.properties文件导入属性:
<properties resource="db.properties"/>
- 在
<dataSource>元素中更新数据库连接配置,以使用导入的属性:
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
- 更新
<mappers>元素,以使用mapper.package属性:
<mappers>
<package name="${mapper.package}"/>
</mappers>
完整的 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>
<!-- 从 db.properties 文件导入属性 -->
<properties resource="db.properties"/>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<!-- 使用导入的属性配置数据库连接 -->
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<!-- 注册 SQL 映射文件 -->
<mappers>
<package name="${mapper.package}"/>
</mappers>
</configuration>
现在,数据库配置存储在 db.properties 文件中,并且 mybatis-config.xml 文件使用 db.properties 中定义的属性来配置数据库连接。
运行测试用例
要运行测试用例,请执行以下步骤:
- 在终端中,使用以下命令导航到
MyBatisPropertiesProject项目目录:
cd ~/project/MyBatisPropertiesProject/
- 运行以下命令以执行测试用例:
mvn test
输出应类似于以下内容:
-------------------------------------------------------
T E S T S
-------------------------------------------------------
运行 org.labex.test.MyBatisTest
数据删除成功
数据插入成功
[课程编号:1 课程名称:数据结构 教师:约翰·史密斯,课程编号:2 课程名称:Java 教师:玛丽·约翰逊,课程编号:3 课程名称:Python 教师:大卫·布朗,课程编号:4 课程名称:C++ 教师:詹妮弗·戴维斯,课程编号:6 课程名称:C 教师:迈克尔·威尔逊,课程编号:8 课程名称:人工智能 教师:艾米丽·汤普森]
数据更新成功
测试运行:4,失败:0,错误:0,跳过:0,耗时:2.1 秒
这表明测试类使用 MyBatis 对名为 Course 的数据库表执行 CRUD 操作,包括查询、插入、更新和删除操作。
总结
恭喜你!你已完成本项目。你可以在 LabEx 中练习更多实验以提升技能。



