MyBatis(全局配置文件详解)

2022-05-13 14:15:35 浏览数 (1)

MyBatis的全局配置文件和映射文件都是以xml的形式。

xml文件中包含了声明(版本信息及编码格式)、约束(dtd、schema、mybatis使用的都是dtd约束)、节点及属性(数据库连接)。

properties标签

用于加载properties文件,以及设置属性和值。如:数据库用户和密码。

代码语言:javascript复制
<!-- 指定properties文件 -->
<properties resource="jdbc.properties">
  <!-- 用于设置属性和值 如数据库用户和密码 -->
  <property name="" value=""/>
</properties>

settings标签

配置MyBatis的全局变量及开关。

详见官方文档:

https://mybatis.org/mybatis-3/zh/configuration.html#settings

代码语言:javascript复制
<settings>
  <setting name="属性" value="属性值"/>
  <!-- settings一般用来配置全局变量及开关 -->
</settings>

typeAliases标签

配置Java类的别名(就是给包名太长的类起一个小名)。

详见官方文档:

https://mybatis.org/mybatis-3/zh/configuration.html#typeAliases

MyBatis有一些默认别名,如:

String的别名是string

Integer的别名是int,等等。

下面是我们自定义别名时的格式。

代码语言:javascript复制
<typeAliases>
  <typeAlias alias="Author" type="domain.blog.Author"/>
  <typeAlias alias="Blog" type="domain.blog.Blog"/>
</typeAliases>

Mappers标签

用于加载映射配置文件。

代码语言:javascript复制
<mappers>
     <mapper resource="UserMapper.xml"/>
</mappers>

属性:resource是基于类路径,url是基于绝对路径,classmapper接口的全限定类名。

一般情况下用resource就可以。

批量加载映射文件:

代码语言:javascript复制
<mappers>
  <!-- name中指定需要加载的映射文件所在的包名 -->
  <package name="com.dao.UserMapper"/>
</mappers>

需要注意的是mapper接口的类路径正确的写法是:

代码语言:javascript复制
<mapper namespace="dao.UserDao">

错误写法:

代码语言:javascript复制
<mapper namespace="dao/UserDao">

0 人点赞