MyBatis 是一个优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects, 普通的 Java 对象)映射成数据库中的记录。
MyBatis 的配置文件通常是一个 XML 文件,名为 mybatis-config.xml
。这个文件包含了影响 MyBatis 行为的设置和属性信息。
configuration
:根元素。properties
:属性配置。settings
:全局配置参数。typeAliases
:类型别名。environments
:环境配置,支持多环境配置。mappers
:映射器配置,指定 SQL 映射文件的位置。<properties>
:用于定义属性,可以在其他地方引用。<settings>
:全局设置,如缓存、延迟加载等。<typeAliases>
:为 Java 类型设置简短的名字。<environments>
:配置数据库环境,包括事务管理器和数据源。<mappers>
:声明 SQL 映射文件或映射器接口。<if>
, <choose>
, <when>
, <otherwise>
, <trim>
, <where>
, <set>
, <foreach>
等标签编写动态 SQL。resultMap
明确指定映射关系。以下是一个简单的 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>
<property name="jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="jdbc.url" value="jdbc:mysql://localhost:3306/mydb"/>
<property name="jdbc.username" value="root"/>
<property name="jdbc.password" value="root"/>
</properties>
<settings>
<setting name="cacheEnabled" value="true"/>
<setting name="lazyLoadingEnabled" value="false"/>
</settings>
<typeAliases>
<typeAlias alias="User" type="com.example.User"/>
</typeAliases>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/example/UserMapper.xml"/>
</mappers>
</configuration>
在这个示例中,我们定义了数据库连接信息、全局设置、类型别名以及映射器文件的位置。通过这样的配置,MyBatis 可以正确地加载并执行 SQL 映射文件中的 SQL 语句。
领取专属 10元无门槛券
手把手带您无忧上云