一、properties属性

  1.可以在mybatis-config.xml中使用property子元素配置

    <properties resource="jdbc.properties">
<!-- <property name="database.driver" value="com.mysql.jdbc.Driver"/> <property
name="database.url" value="jdbc:mysql://localhost:3306/chapter4"/> <property
name="database.username" value="root"/> <property name="database.password"
value="123456"/> -->
</properties>

  2.也可以使用独立的jdbc.properties文件+properties属性resource来引入properties文件

  jdbc.properties文件:

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

  使用resource属性引入:

<properties resource="jdbc.properties" />

  二、setting设置

  例如:

    <settings>
<setting name="lazyLoadingEnabled" value="true" />
<setting name="aggressiveLazyLoading" value="false" />
</settings>

  常见属性:

  • cacheEnabled:影响所有映射器中配置缓存的全局开关
  • lazyLoadingEnabled:延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。在特定关联关系中可通过设置fetchType属性来覆盖该项的开关状态。
  • aggressiveLazyLoading:当启用时,对任意延迟属性的调用会使带有延迟加载属性的对象完整加载;反之,每种属性将会按需加载

  

  三、typeAliases属性

  由于类的权限定名称很长,需要大量使用的时候,总写那么长的名称不方便,在Mybatis中允许定义一个简写来代表这个类,这就是别名,别名分为系统定义别名和自定义别名。

  

  四、typeHandler属性

  在JDBC中,需要在PreparedStatement对象中设置那些已经预编译过的SQL语句的参数。执行SQL后,会通过ResultSet对象获取得到数据库的数据,而这些MyBatis是根据数据的类型通过typeHandler来实现的。

  五、objectFactory属性

  当创建结果集时,MyBatis会使用一个对象工厂来完成创建这个结果集实例。在默认的情况下,MyBatis会使用其定义的对象工厂--DefaultObjectFactory来完成对应的工作。

  MyBatis允许注册自定义的ObjectFactory。如果自定义,则需要实现接口org.apache.ibatis.reflection.factory.ObjectFactory,并给予配置。

  六、plugins属性

  插件是MyBatis中最强大和最灵活的组件,同时也是最复杂、最难以使用的组件,而且它十分危险,因为它将覆盖MyBatis底层对象的核心方法和属性。如果操作不当将会产生严重后果,甚至是摧毁MyBatis框架。

  七、environments属性

  在MyBatis中,运行环境主要的作用是配置数据库信息,它可以配置多个数据库,一般而言只需要配置其中的一个就可以了。它下面又分为两个可配置的元素:事务管理器(transactionManager)、数据源(dataSource)。在实际的工作中,大部分情况下会采用Spring对数据源和数据库的事务进行管理。

MyBatis(2)-- MyBatis配置mybatis-config.xml的更多相关文章

  1. MyBatis学习(一)、MyBatis简介与配置MyBatis+Spring+MySql

    一.MyBatis简介与配置MyBatis+Spring+MySql 1.1MyBatis简介 MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架.MyBatis 摒除了大部分的J ...

  2. MyBatis学习 之 一、MyBatis简介与配置MyBatis+Spring+MySql

    目录(?)[-] 一MyBatis简介与配置MyBatisSpringMySql MyBatis简介 MyBatisSpringMySql简单配置 搭建Spring环境 建立MySql数据库 搭建My ...

  3. MyBatis简介与配置MyBatis+Spring+MySql

    MyBatis学习 之 一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 二.SQL语句映射文件(1)resultMap MyBatis学习 之 二.SQL ...

  4. MyBatis(2):config.xml文件

    前言 前一篇文章,讲了MyBatis入门,讲到了MyBatis有两个基本的配置文件,一个用来配置环境信息,一个用来写SQL语句.前者我把它命名为config.xml,config.xml的内容是: 1 ...

  5. 一、MyBatis简介与配置MyBatis+Spring+MySql

    //备注:该博客引自:http://limingnihao.iteye.com/blog/106076 1.1MyBatis简介 MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架 ...

  6. mybatis 学习二 MyBatis简介与配置MyBatis+Spring+MySql

    1.2.2建立MySql数据库 在C:\Program Files\MySQL\MySQL Server 5.7\bin下面: 首先连接MySQL:        mysql  -u root -p ...

  7. 深入Mybatis源码——配置解析

    @ 目录 前言 正文 配置解析 1. cacheRefElement/cacheElement 2. resultMapElements 3. sqlElement 4. buildStatement ...

  8. STS中配置MyBatis代码生成器

    1.STS工具菜单项Help > Eclipse Marketplace... 2.输入“mybatis”关键字搜索 3.选择MyBatis Generator 1.3.7进行安装 4.安装成功 ...

  9. JAVAEE——Mybatis第二天:输入和输出映射、动态sql、关联查询、Mybatis整合spring、Mybatis逆向工程

    1. 学习计划 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If标签 b) Where标签 c) Sql片段 d) Foreach标签 3.关联查询 a) 一对 ...

  10. 《深入理解mybatis原理2》 Mybatis初始化机制详解

    <深入理解mybatis原理> Mybatis初始化机制详解 对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外.本章将通过以下几点详细介绍MyBatis的初始化过程 ...

随机推荐

  1. 第六届蓝桥杯java b组第三题

    第三题 三羊献瑞 观察下面的加法算式: 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字. 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容. 答案这个题目完全可以使用暴 ...

  2. 第八届蓝桥杯java b组第三题

    标题:承压计算 X星球的高科技实验室中整齐地堆放着某批珍贵金属原料. 每块金属原料的外形.尺寸完全一致,但重量不同.金属材料被严格地堆放成金字塔形. 7                         ...

  3. Wordpress SEO

    Wordpress SEO 安装插件 Baidu Sitemap Generator, 作者 柳城, 主要用于按照配置参数生成 sitemap.xml 网站地图. 设置路径 设置 => Baid ...

  4. rabbitmq linux卸载

    rabbitmq是运行在erlang环境下的,所以卸载时应将erlang卸载. 1.卸载rabbitmq相关 卸载前先停掉rabbitmq服务,执行命令 $ service rabbitmq-serv ...

  5. Docker系列(二):通过Docker安装使用 Kubernetes (K8s)

    Docker社区版从17.12版本开始已经提供了对Kubernetes的支持.但是由于其安装过程依赖的镜像服务在国内访问很不稳定,很多朋友都无法配置成功.我们提供了一个简单的工具帮助大家开启Docke ...

  6. Scala 学习笔记之集合(7) Option

    object CollectionDemo8 { def main(args: Array[String]): Unit = { //Option集合的使用,可以用来安全的判断null或非null,放 ...

  7. MySQL 复制已存在的表生成新表

    从已有的表创建一个新的空表 CREATE TABLE new_table LIKE old_table; 注意: create table ... like 创建的表会保留原有表的字段.索引的定义,但 ...

  8. Timed out after 30000 ms while waiting to connect

    今天使用mongo-java-drive写连接mongo的客户端,着实被上面那个错坑了一把.回顾一下解决过程: 报错: com.mongodb.MongoTimeoutException: Timed ...

  9. Coins POJ - 1742

    给出硬币面额及每种硬币的个数,求从1到m能凑出面额的个数. Input 多组数据,每组数据前两个数字为n,m.n表示硬币种类数,m为最大面额,之后前n个数为每种硬币的面额,后n个数为相应每种硬币的个数 ...

  10. 面试官,不要再问我“Java GC垃圾回收机制”了

    Java GC垃圾回收几乎是面试必问的JVM问题之一,本篇文章带领大家了解Java GC的底层原理,图文并茂,突破学习及面试瓶颈. 楔子-JVM内存结构补充 在上篇<JVM之内存结构详解> ...