【Mybatis】(四)详解SqlMapConfig.xml文件

来源:互联网 发布:淘宝千里眼怎么安装 编辑:程序博客网 时间:2024/05/21 22:48

    学习一个框架,最难理解的莫过于他的配置文件了。框架里面好多东西都是固定的,不需要我们记忆,也可能我们都不理解。很多东西,我们只是会用而不知其意,会写而不解起因。今天我们就来学习一下Mybatis的全局配置文件——SqlMapConfig.xml。

这是一个空的SqlMapConfig.xml,我已经添加了约束。

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration>    </configuration>
下面 我们来看一下SqlMapConfig.xml里面的元素名称。

1.properties属性

   我们一般使用properties来获取数据库连接信息。在开发时,为了好维护,我们一般把数据库连接参数单独配置在一个db.properties文件中,

db.properties文件代码如下:

jdbc.driver=com.mysql.jdbc.Driverjdbc.url=jdbc:mysql://localhost:3306/mybatisjdbc.username=****jdbc.password=****

然后再SqlMapConfig.xml中直接加载即可。

<properties resource="db.properties"></properties>


我们需要注意:MyBatis在读取配置文件时,首先读取在properties元素内定义的属性,然后读取properties元素中的resource或者url加载的属性。如果有同名属性会覆盖。最后读取parameterType传递的属性,如果有同名会覆盖。


2.settings全局参数配置

在settings元素体内,我们可以进行一些全局的配置。比如,开启二级缓存,启用禁用延迟加载等。

比如:

<settings>        <!-- 启用延迟加载 -->        <setting name="lazyLoadingEnabled" value="true"/>        <!-- 启用延迟加载后,加载时按需要加载 -->        <setting name="aggressiveLazyLoading" value="false"/>        <!-- 开启二级缓存 -->        <setting name="cacheEnabled" value="true"/>        </settings>

这么多,很多都不常用,大家了解就好。

3.typeAliases别名

别名,顾名思义,只是取了一个外号而已。使用这个,我们可以用别名替代原来的名称。

<typeAliases><typeAlias alias="Author" type="domain.blog.Author"/></typeAliases>

4.mappers

上篇博客,我们讲解了使用mapper代理方法开发Dao,我们需要编写一个mapper接口和一个mapper.xml文件。我们就需要在SqlMapConfig.xml中加载我们编写的mapper.xml文件。

我们可以使用classpath方法加载,也可以直接按照文件路径加载

//按照classpath方法加载<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 url="file:///var/sqlmaps/AuthorMapper.xml"/><mapper url="file:///var/sqlmaps/BlogMapper.xml"/><mapper url="file:///var/sqlmaps/PostMapper.xml"/></mappers>

理解了配置文件我们才能更好的去敲我们的代码。



0 0