MyBatis2-全局配置文件

标签: MyBatis 全局配置
11人阅读 评论(0) 收藏 举报
分类:

二.全局配置文件

MyBatis 的配置文件包含了影响 MyBatis 行为甚深的
设置(settings)和属性(properties)信息。文档的
顶层结构如下:

• configuration 配置
    • properties 属性
    • settings 设置
    • typeAliases 类型命名
    • typeHandlers 类型处理器
    • objectFactory 对象工厂
    • plugins 插件
    • environments 环境
        • environment 环境变量
            • transactionManager 事务管理器
            • dataSource 数据源
    • databaseIdProvider 数据库厂商标识
    • mappers 映射器
2.1 properties
<!--mybatis可以使用properties来引入外部properties配置文件的内容
    resource:引入类路径下资源           
     url:引入网络路径下的资源-->
<properties resource="dbconfig.properties"/>

<!--dbconfig.properties:-->

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis1
jdbc.username=root
jdbc.password=123456

<!--数据库搭载:-->

<dataSource type="POOLED">
    <!--导入了properties后可以直接使用内部配置内容-->
    <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>
2.2 settings
<!--
    settings包含很多重要的设置项
        settings:用来设置每一个设置项
            name:设置项名
            value:设置项取值
-->

[settings中各属性详解](https://blog.csdn.net/u014231523/article/details/53056032)

<!--例:设置驼峰命名法-->
<settings>
    <setting name="mapUnderscoreToCamelCase" value="true"/>
</settings>
2.3 typeAliases
<typeAliases>
        <!--
        typeAliases:别名处理器,可以为java类型起别名
            注意:别名不区分大小写
            typeAlias:为某个类单独起别名
                type:指定要起别名的类型全类名,默认别名就是类名小写:employee
                alias:指定新的别名
            package:为某个包下的所有类批量起别名
                name:指定包名(为当前包以及下面所有的后代包的每一个类都起一个默认别名(类名小写))
            @Alias:批量起别名的情况下,在类前加@Alias标签,标签内的值,为其新的别名

            建议:还是使用全类名,这样不易混淆,并且利用ctrl加左键可以直接进入bean
        -->
        <!--<typeAlias type="com.itlc.mybatis.HelloWorld.New.bean.Employee" alias="emp"/>-->
        <package name="com.itlc.mybatis.HelloWorld.New.bean"/>
    </typeAliases>
2.4 environments
<!--
        environments:环境,mybatis可以配置多种环境,default指定使用某种环境。可以快速切换环境
            environment:对应一个具体的环境信息
                必须有transactionManager:事务管理器
                    type:事务管理器类型(别名);JDBC(JdbcTransactionFactory)\MANAGED(ManagedTransactionFactory)
                        自定义事务管理器:实现TransactionFactory接口。type指定为全类名
                必须有dataSource:
                    type:数据源类型(别名);UNPOOLED(UnpooledDatasourceFactory)
                                            \POOLED(PooledDatasourceFactory)
                                            \JNDI(JndiDatasourceFactory)
                    自定义数据源:实现DatasourceFactory接口。type指定为全类名

    -->
    <environments default="development">
        <environment id="test">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED"/>
        </environment>

        <environment id="development">
            <transactionManager type="JDBC" />
            <dataSource type="POOLED">
                <!--导入了properties后可以直接使用内部配置内容-->
                <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>
2.5 databaseIdProvider
<!--
        databaseIdProvider:支持多数据库厂商
        type="DB_VENDOR"(别名):VendorDatabaseIdProVider
            作用就是得到数据厂商的标识,mybatis就能根据数据库厂商标识(驱动getDatabaseProductName())
            mybatis就能根据数据库厂商标识来执行不同的sql。标识:MySQL,Oracle,SQL Server,xxxx
    -->
    <databaseIdProvider type="DB_VENDOR">
        <!--为不同的数据库厂商起别名-->
        <property name="MySQL" value="mysql"/>
        <property name="Oracle" value="oracle"/>
        <property name="SQL Server" value="sqlserver"/>
    </databaseIdProvider>
    <!--
        在mapper中利用databaseId指定数据库类型即可,例:
            <select id="getEmpById" resultType="Emp" databaseId="mysql">
                Select * FROM tbl_employee WHERE id=#{id}
            </select>
    -->
2.6 mappers
    <!-- 将我们写好的sql映射文件(EmployeeMapper.xml)一定要注册到全局配置文件(mybatis-config.xml)中 -->
    <!--6.mappers:将sql映射注册到全局配置中-->
    <mappers>
        <!--
        mapper:注册一个sql映射
            resource:引用类路径下的sql映射文件
            url:引用网络路径或者磁盘路径下的sql映射文件
            class:引用(注册)接口
                1.有sql映射文件,映射文件名和接口同名,并且放在与接口同一目录下
                2.没有sql映射文件,所有的sql都是利用注解写在接口上
                推荐:
                    比较重要的:复杂的Dao接口我们来写sql映射文件
                    不重要,简单的Dao接口为了开发快速可以使用注解
        -->
        <mapper class="com.itlc.mybatis.HelloWorld.New.dao.testEmployeeMapper"/>
        <mapper resource="EmployeeMapper.xml" />
        <!--批量注册:-->
        <package name="com.itlc.mybatis.HelloWorld.New.dao"/>
    </mappers>
查看评论

JAVA 读取properties配置文件 - 全局搜索路径

import java.io.IOException; import java.util.Properties; import org.springframework.core.io.support...
  • icoudsoft_saas
  • icoudsoft_saas
  • 2016-02-27 21:22:51
  • 658

asp.net项目全局配置文件笔记小记

#asp.net项目全局配置文件笔记小记 这些天开始准备上手一个ASP项目,由于以前没有接触过,所以在这里记录一下学习的过程: - **前言** - **1、项目下载** - **2、...
  • niguangfeixiang911
  • niguangfeixiang911
  • 2017-03-07 15:14:07
  • 210

mybatis中的全局配置文件

在mybatis中的全局配置文件SqlMapConfig.xml中,我们可以配置的内容如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) ...
  • little_nai
  • little_nai
  • 2016-11-22 18:13:20
  • 1778

Mybatis学习总结(三).Mybatis全局配置文件

Mybatis-Config配置 在config.xml配置文件中的内容和顺序如下: properties 属性settings 设置typeAliases 类型别名typeHandlers 类...
  • yuchao2015
  • yuchao2015
  • 2017-02-06 20:30:42
  • 526

Mybatis中全局配置文件的内容

SqlMapConfig.xml(名称可变)作为mybatis的全局配置文件,配置内容包括:数据库环境、mapper定义、全局参数设置。properties(属性) settings(全局配置参数) ...
  • doctor_octopus
  • doctor_octopus
  • 2016-03-24 21:46:07
  • 3479

【MyBatis学习02】全局配置文件

本文博客地址:http://blog.csdn.net/soonfly/article/details/63352180 (转载请注明出处)在入门实例中,最先接触的是Mybatis全局配置文件。该配置...
  • soonfly
  • soonfly
  • 2017-03-18 23:21:32
  • 452

SpringBoot系列之四全局配置

一、在src/main/resources代码目录下,建立application.properties文件 二、可配置内容实例如下 #配置context pach , 访问地址就是http://i...
  • yeputi1015
  • yeputi1015
  • 2017-06-21 20:00:24
  • 912

三分钟教你学Git(十九) - 全局,用户,仓库作用域的配置文件

Git的配置文件存储在三个地方,分别可以作为全局的作用域,用户级别的作用域和仓库级别的作用域。这些变量分别存储在三个不同的位置: 1 全局作用域的config文件。 /etc/gitconfig ...
  • hongchangfirst
  • hongchangfirst
  • 2015-09-28 11:17:10
  • 2447

mybatis学习之全局配置文件(五)

1Mybatis全局配置文件SqlMapConfig.xml是mybatis的全局配置文件,它的名称可以是任意命名的。 6.1全部配置内容 SqlMapConfig.xml的配置内容和顺序如下(顺...
  • shaoduo
  • shaoduo
  • 2017-01-09 09:19:55
  • 1149

linux的所有全局配置文件

系统初始化     /etc/inittab 运行级别、控制台数量     /etc/timezone 时区     /etc/inetd.conf 超级进程   文件系统   ...
  • z1988316
  • z1988316
  • 2012-04-23 21:44:51
  • 1595
    个人资料
    持之以恒
    等级:
    访问量: 5176
    积分: 460
    排名: 10万+