【MyBatis框架】第五章 MyBatis配置文件

第五章 MyBatis配置文件

  • 第五章 MyBatis配置文件
    • 5.1 settings部分
    • 5.2 typeAliase 别名
    • 5.3 配置环境
    • 5.4 使用数据库属性配置文件(*)
    • 5.5 mapper 标签(*)

欢迎来到本博客
作者简介:阿斯卡码,专注于研究Java框架/Vue,就读于河南中医药大学,刚刚入门项目开发
CSDN编程比赛奖章获得者/Java领域创作者
计划学习:深入学习Spring全家桶,Vue, mybatis,Mysql等领域。(目前涉及不深入)
如果此文还不错的话,还请关注、点赞、收藏三连支持一下博主~

第五章 MyBatis配置文件

mybatis配置文件两大类: 1 mybatis主配置文件; 2 mybatis的mapper文件

  1. mybatis主配置文件,提供mybatis全局设置的。包含的内容 日志, 数据源,mapper文件位置
  2. mapper文件: 写sql语句的。 一个表一个mapper文件

5.1 settings部分

settings是mybatis的全局设置,影响整个mybatis的运行。 这个设置一般使用默认值就可以了。

<settings>
  <setting name="cacheEnabled" value="true"/>
  <setting name="lazyLoadingEnabled" value="true"/>
  <setting name="multipleResultSetsEnabled" value="true"/>
  <setting name="useColumnLabel" value="true"/>
  <setting name="useGeneratedKeys" value="false"/>
  <setting name="autoMappingBehavior" value="PARTIAL"/>
  <setting name="autoMappingUnknownColumnBehavior" value="WARNING"/>
  <setting name="defaultExecutorType" value="SIMPLE"/>
  <setting name="defaultStatementTimeout" value="25"/>
  <setting name="defaultFetchSize" value="100"/>
  <setting name="safeRowBoundsEnabled" value="false"/>
  <setting name="mapUnderscoreToCamelCase" value="false"/>
  <setting name="localCacheScope" value="SESSION"/>
  <setting name="jdbcTypeForNull" value="OTHER"/>
  <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/>
settings>

5.2 typeAliase 别名

设置别名

	<typeAliases>
        
        <typeAlias type="com.bjpowernode.domain.Student" alias="stu" />
        <typeAlias type="com.bjpowernode.vo.QueryParam" alias="qp" />

        
        <package name="com.bjpowernode.domain" />
        <package name="com.bjpowernode.vo" />

    typeAliases>

5.3 配置环境

environments: 环境标签, 在他里面可以配置多个environment
       属性: default ,必须是某个environment的id属性值。 表示mybatis默认连接的数据库
environment: 表示一个数据库的连接信息。
       属性: id 自定义的环境的标识。 唯一值。
transactionManager:事务管理器
       属性:  type 表示事务管理器的类型。
       属性值:1)JDBC: 使用Connection对象, 由mybatis自己完成事务的处理。
             2) MANAGED: 管理,表示把事务的处理交给容器实现(由其他软件完成事务的提交,回滚)
dataSource: 数据源,创建的Connection对象,连接数据库。
       属性:  type 数据源的类型
       属性值:1) POOLED, mybatis会在内存中创建PooledDataSource类,管理多个Connection连接对象,使                           用的连接池
             2) UNPOOLED ,不使用连接池, mybatis创建一个UnPooledDataSource这个类, 每次执行sql                           语句先创建Connection对象,再执行sql语句,最后关闭Connection
             3) JNDI : java的命名和目录服务。

<environments default="online">
        <environment id="development">
            <transactionManager type="JDBC"/>
            
            <dataSource type="POOLED">
                
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                
                <property name="url"
                          value="jdbc:mysql://localhost:3306/springdb"/>
                
                <property name="username" value="root"/>
                
                <property name="password" value="123"/>
            dataSource>
        environment>
        
        <environment id="online">
            <transactionManager type="JDBC"/>
            
            <dataSource type="POOLED">
                
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                
                <property name="url"
                          value="jdbc:mysql://localhost:3306/springdb"/>
                
                <property name="username" value="admin"/>
                
                <property name="password" value="123456"/>
            dataSource>
        environment>
    environments>

5.4 使用数据库属性配置文件(*)

需要把数据库的配置信息放到一个单独文件中, 独立管理。 这个文件扩展名是 properties. 在这个文件中,使用自定义的key=value的格式表示数据

使用步骤:

1.在resources目录中,创建xxxx.properties

2.在文件中,使用 key=value的格式定义数据。

例如 jdbc.url=jdbc:mysq://localhost:3306/springdb

3.在mybatis主配置文件, 使用properties标签引用外部的属性配置文件

4.在使用值的位置, 使用${key}获取key对应的value(等号右侧的值)

例子:

jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/springdb?useUnicode=true&characterEncoding=utf-8
jdbc.username=root
jdbc.password=123

mybatis主配置文件


<properties resource="jdbc.properties" />

<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>

5.5 mapper 标签(*)

使用mapper指定其他mapper文件的位置,

mapper标签使用的格式有两个常用的方式:

<mappers>
    
    <mapper resource="com/bjpowernode/dao/StudentDao.xml"/>
    <mapper resource="com/bjpowernode/dao/OrderDao.xml"/>
    
    <package name="com.bjpowernode.dao" />
    <package name="com.bjpowernode.dao1" />
mappers>

你可能感兴趣的:(Mybatis,mybatis)