导言
在 MyBatis 项目中,通常会有一套标准的目录结构和配置文件。本文将介绍 MyBatis 项目中常见的目录结构及其配置文件的使用,帮助新手开发者快速上手。
项目目录结构
在 MyBatis 项目中,目录结构一般包括以下几个部分:
- 配置文件 (
db.properties
) - MyBatis 主配置文件 (
mybatis-config.xml
) - Mapper 接口 (
UserMapper.java
) - Mapper XML 文件 (
UserMapper.xml
)
以下是一个示例目录结构:
src
├── main
│ ├── java
│ │ └── cn
│ │ └── edu
│ │ └── guet
│ │ ├── bean
│ │ │ └── User.java
│ │ └── mapper
│ │ └── UserMapper.java
│ └── resources
│ ├── db.properties
│ ├── mybatis-config.xml
│ └── mapper
│ └── UserMapper.xml
配置文件(db.properties)
db.properties
文件用于存储数据库连接的配置信息。这些信息将在 MyBatis 主配置文件中被引用。
driver=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://39.101.78.124:3306/Users?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
name=root
password=newPassword888!
MyBatis 主配置文件(mybatis-config.xml)
mybatis-config.xml
是 MyBatis 的核心配置文件,用于配置 MyBatis 的环境信息、数据源以及映射文件。
<?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>
<properties resource="db.properties"/>
<settings>
<setting name="logImpl" value="LOG4J2"/>
</settings>
<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="${name}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="mapper/UserMapper.xml"/>
</mappers>
</configuration>
Mapper 接口(UserMapper.java)
UserMapper.java
是一个接口,定义了与数据库交互的方法。它提供了一个抽象层,使我们可以以接口的方式与数据库交互。
package cn.edu.guet.mapper;
import cn.edu.guet.bean.User;
public interface UserMapper {
User getUserById(int userId);
}
Mapper XML 文件(UserMapper.xml)
UserMapper.xml
文件包含了 SQL 语句和 UserMapper
接口方法的映射。在这个 XML 文件中,我们可以定义具体的 SQL 查询和参数映射。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org/DTD Mapper 3.0" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.edu.guet.mapper.UserMapper">
<select id="getUserById" resultType="cn.edu.guet.bean.User" parameterType="int">
SELECT user_id AS userId,
user_name AS userName,
user_phone AS userPhone,
user_address AS userAddress
FROM Users
WHERE user_id = #{userId}
</select>
</mapper>
总结
db.properties
:用于存储数据库连接信息,便于在多个配置文件中复用。mybatis-config.xml
:MyBatis 的主配置文件,负责加载属性文件、配置环境和映射文件。UserMapper.java
:定义数据库操作的接口方法,为 SQL 操作提供接口定义。UserMapper.xml
:Mapper 的 XML 文件,包含具体的 SQL 语句和接口方法的映射。
通过本文的讲解,您可以快速构建一个基于 MyBatis 的基础项目结构,并开始实现数据库操作。