美文网首页程序员
mybatis-config.xml配置解析

mybatis-config.xml配置解析

作者: 凡哥爱丽姐 | 来源:发表于2021-01-29 14:59 被阅读0次

1、mybatis-config.xml 系统核心配置文件

能配置的内容如下:
configuration(配置)
properties(属性)
settings(设置)
typeAliases(类型别名)
typeHandlers(类型处理器)
objectFactory(对象工厂)
plugins(插件)
environments(环境配置)
        environment(环境变量)
            transactionManager(事务管理器)
            dataSource(数据源)
databaseIdProvider(数据库厂商标识)
mappers(映射器)
<!-- 注意元素节点的顺序!顺序不对会报错 -->

2、environments元素

<environments default="development">
  <environment id="development">
    <transactionManager type="JDBC">
      <property name="..." value="..."/>
    </transactionManager>
    <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>
2.1、配置MyBatis的多套运行环境,将SQL映射到多个不同的数据库上,必须指定其中一个为默认运行环境(通过default指定)
2.2、子元素节点:environment
2.2.1、transactionManager

在 MyBatis 中有两种类型的事务管理器(也就是 type="[JDBC|MANAGED]"):
    JDBC – 这个配置直接使用了 JDBC 的提交和回滚设施,它依赖从数据源获得的连接来管理事务作用域。
    MANAGED – 这个配置几乎没做什么。它从不提交或回滚一个连接,而是让容器来管理事务的整个生命周期(比如 JEE 应用服务器的上下文)。

2.2.2、dataSource

dataSource 元素使用标准的 JDBC 数据源接口来配置 JDBC 连接对象的资源。
有三种内建的数据源类型(也就是 type="[UNPOOLED|POOLED|JNDI]"):
    UNPOOLED– 这个数据源的实现会每次请求时打开和关闭连接。虽然有点慢,但对那些数据库连接可用性要求不高的简单应用程序来说,是一个很好的选择。
    POOLED– 这种数据源的实现利用“池”的概念将 JDBC 连接对象组织起来,避免了创建新的连接实例时所必需的初始化和认证时间。 这种处理方式很流行,能使并发 Web 应用快速响应请求。
    JNDI – 这个数据源实现是为了能在如 EJB 或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后放置一个 JNDI 上下文的数据源引用。

3、mappers元素

映射器 : 定义映射SQL语句文件(推荐使用第一种)。
既然 MyBatis 的行为其他元素已经配置完了,我们现在就要定义 SQL 映射语句了。但是首先我们需要告诉 MyBatis 到哪里去找到这些语句。

<!-- 使用相对于类路径的资源引用 -->
<mappers>
  <mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
  <mapper resource="org/mybatis/builder/BlogMapper.xml"/>
  <mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
<!-- 使用映射器接口实现类的完全限定类名 -->
<mappers>
  <mapper class="org.mybatis.builder.AuthorMapper"/>
  <mapper class="org.mybatis.builder.BlogMapper"/>
  <mapper class="org.mybatis.builder.PostMapper"/>
</mappers>
<!-- 将包内的映射器接口实现全部注册为映射器 -->
<mappers>
  <package name="org.mybatis.builder"/>
</mappers>
<!-- 使用完全限定资源定位符(URL) -->
<mappers>
  <mapper url="file:///var/mappers/AuthorMapper.xml"/>
  <mapper url="file:///var/mappers/BlogMapper.xml"/>
  <mapper url="file:///var/mappers/PostMapper.xml"/>
</mappers>

4、typeAliases别名

类型别名是为 Java 类型设置一个短的名字。它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。

    <!--配置别名,注意顺序-->
    <typeAliases>
        <typeAlias type="com.fan.entity.User" alias="User"/>
    </typeAliases>

当这样配置时,User可以用在任何使用com.fan.entity.User的地方。

<typeAliases>
    <package name="com.fan.entity"/>
</typeAliases>

每一个在包 com.fan.entity中的 Java Bean,在没有注解的情况下,会使用 Bean 的首字母小写的非限定类名来作为它的别名。

    @Alias("user")
    public class User {
        ...
    }

若有注解,则别名为其注解值。

相关文章

  • MyBatis-类总结

    类解析 解析器 XPathParser 解析 mybatis-config.xml 配置文件工具类 DOM(Doc...

  • Mybatis配置解析

    Mybatis配置解析 配置mybatis-config.xml MyBatis 的配置文件包含了会深深影响 My...

  • 4、配置解析

    4、 配置解析 mybatis-config.xml 系统核心配置文件 MyBatis 的配置文件包含了会深深影响...

  • Mybatis实现原理

    阅读源码可以的得知,Mybatis首先获取到我们的mybatis-config.xml配置类.解析配置类构建启动M...

  • mybatis-config.xml配置解析

    1、mybatis-config.xml 系统核心配置文件 能配置的内容如下: 2、environments元素 ...

  • mybatis中比较核心的两个步骤

    源码分析: 第一步:读取mybatis-config.xml配置文件 第二步:(有关配置文件的解析与处理都在该步骤...

  • Mybatis核心配置文件

    mybatis-config.xml系统核心配置文件 configuration(配置) properties(属...

  • 十三 SSM框架集成

    一、核心配置 1、配置mybatis-config.xml(1.3以后可以不配置) 2、配置mapper.xml ...

  • 20、SSM框架整合

    一、核心配置 1、配置mybatis-config.xml(可选,1.3以后可不配置) 2、配置mapper.xm...

  • mybatis源码-解析器模块

    目录结构 解析器主要提供的功能:封装XPath,为mybatis初始化时解析mybatis-config.xml配...

网友评论

    本文标题:mybatis-config.xml配置解析

    本文链接:https://www.haomeiwen.com/subject/mxpazktx.html