■dtd约束

  1.     <!DOCTYPE configuration  
  2.         PUBLIC "-//mybatis.org//DTD Config 3.0//EN"  
  3.         "http://mybatis.org/dtd/mybatis-3-config.dtd"> 

为了编写简单,在我们写标签时会有代码提示,所以这个约束很有必要,一般联网情况下,我们只要写上上面代码的最后一行即可。

■properties

这个标签主要是把我们在主配置文件中,关于数据库连接的部分配置抽离出来,通过配置文件的方式进行配置,当然在SSM整合中,这一项是交给Spring帮我们完成的,现在已经很少用到了。

  1. 编写配置文件
    1. 创建一个配置文件dbconfig.properties
    2. 写入一下配置信息
  2. jdbc.driver=com.mysql.jdbc.Driver  
  3. jdbcjdbc.url=jdbc:mysql://localhost:3306/mybatis_learn  
  4. jdbc.username=root  
  5. jdbc.password=*******  

2.在总配置文件中引入这个文件

<properties resource="dbconfig.properties"/>

3.将dataSource标签里dbconfig.properties的各项值还原

  1. <property name="driver" value="${jdbc.driver}"/>  
  2. <property name="url" value="${jdbc.url}"/>  
  3. <property name="username" value="${jdbc.username}"/>  
  4. <property name="password" value="${jdbc.password}"/>  

■settings

settings是一个庞大而重要的标签,它可以改变Mybaits运行时的行为,推荐大家看看官方文档

  http://www.mybatis.org/mybatis-3/zh/configuration.html#settings

我会在之后的教程里逐渐给大家解释,这里我就介绍一个比较常用的选项,作为例子。

设置名:mapUnderscoreToCamelCase

描述:     是否开启自动驼峰命名规则(camel case)映射,即从经典数据库列名 A_COLUMN 到经典 Java 属性名 aColumn 的类似映射。

有效值:true | false

默认值:False

这就是下划线映射为驼峰命名的策略,也是我们上一章如果开启这个策略,lastName在数据库中将会映射为last_name,我们也就不必要去在sql语句中编写别名了

■typeAliases

这是别名处理器,我们在上一章中编写mapper.xml是,resultType填写的是JavaBean的包全限定名,如果我们每次添加一个sql查询,在返回类型上都写这种全限定名,就会很麻烦,也不容易读,因此有了这个标签

  1. <typeAliases>  
  2.    <typeAlias type="com.figsprite.bean.Employee" />  
  3. </typeAliases>  

如果我们这样书写,默认的别名会是包名首字母小写,也就是employee,当然我们也可以通过typeAlias中的alias属性指定别名

  1. <typeAliases>  
  2.     <typeAlias type="com.figsprite.bean.Employee" alias="emp"/>  
  3. </typeAliases>

通过这种方式,我们可以看到,每次为类起个别名都要一个typeAlias标签,如果我们JavaBean里有很多类,该如何快速的一次性起这些标签呢?我们需要用到package标签

  1. <typeAliases>  
  2.    <package name="com.figsprite.bean"/>  
  3. </typeAliases> 

这种方法所提供的别名是默认别名(即字母小写,其实别名不区分大小写= =),当然这种方法也有可能出现小问题,如果bean包下有个子包里面也有Employee类,那么Mybatis也会给他起一个相同别名,这样运行起来就有可能报错,这时我们就可以使用注解的方式,在JavaBean里使用@Alisa("emp")注解,起别名,MyBatis给我们起好了常用的几个包和类型的别名。我们起别名不能和这些冲突,其实建议我们使用全限定名的方式,这样容易定位类。

MyBaits全局配置文件的各项标签1的更多相关文章

  1. MyBaits全局配置文件的各项标签2

    ▲typeHandlers 类型处理器,它架起数据库和JavaBean一一映射的桥梁,这里需要注意一下,java在JDK1.8之前,日期处理函数并不丰富,但在JDK1.8之后引入JSR-310标准,这 ...

  2. MyBatis全局配置文件的各项标签3

    mapper 将sql映射注册到全局配置中,这个我们在上一章已经使用过了, resource 这个属性是用来引用类路径下的sql映射文件 url 这个属性是用来引用网络路径或磁盘路径下的sql映射文件 ...

  3. MyBaits 全局配置文件(mybatis-config.xml)

    什么是 MyBatis 全局配置文件 MyBatis 全局配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息. 它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信 ...

  4. MyBatis全局配置文件标签详解

    一.全局配置文件结构 configuration 配置 properties 属性:可以加载properties配置文件的信息 settings 设置:可以设置mybatis的全局属性 typeAli ...

  5. Mybatis的全局配置文件标签介绍(mybatis-config.xml)

    全局配置文件中本人只记录了常用的几个  typeHandlers, objectFactory,objectWrapperFactory, reflectorFactory, plugins, dat ...

  6. mybatis全局配置文件

    一.properties:引入外部配置文件 1.resource :引入类路径下的全局配置文件,例如:<properties resource="conf/dbconfig.prope ...

  7. 02、MyBatis XML 全局配置文件

    MyBatis-全局配置文件 在MyBatis中全局配置文件有着重要的地位,里面有9类行为信息;如果我们要想将MyBatis运用的熟练,配置全局配置文件是必不可少的步骤,所以我们一定要啃下这一块硬骨头 ...

  8. maven全局配置文件settings.xml详解

    概要 settings.xml有什么用? 如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径. settings.xml文件是干什么的,为什么要配置它 ...

  9. Mybatis学习(二)————— 全局配置文件详解

    一.全部配置内容 SqlMapConfig.xml的配置内容和顺序如下,顺序不能乱.现在来对这些属性的意思一一进行讲解. 二.properties 作用:引用java属性文件中的配置信息,比如,加载连 ...

随机推荐

  1. 使用IntelliJ IDEA和Maven管理搭建Web开发环境(以Spring MVC为例)(一)

    前言:原来一直使用MyEclipse,换工作后,新公司使用IDEA,初识IDEA发现,哇,它的快捷键可真多啊,但是一路用下来,觉得非常的好用,特别是利用Maven管理,那简直叫一个爽.当然笔者在使用过 ...

  2. Jenkins+Ansible+Gitlab自动化部署三剑客-Ansible本地搭建

    可以通过git bash连接linux 关闭防火墙,禁用防火墙开机启动,并更爱selinux文件,重启 重新登录并检查禁用 getenforce 安装git yum -y install git ns ...

  3. 为什么swift是面向协议的编程--对面向对象机制的改进

    主要目标是提供抽象能力和解决值类型的多态问题 Actually, Abrahams says, those are all attributes of types, and classes are j ...

  4. 转://Oracle not in查不到应有的结果(NULL、IN、EXISTS详解)

    问题: 语句1 : Select   *   from   table1 A  where  A.col1  not   in  (  select  col1  from  table2 B )  ...

  5. 第5章 Java中的锁

    5.1 Lock接口 并发编程安全性需要使用到锁,synchronized是一种隐式的获得与释放锁的关键字,除此之外还有Lock接口及其实现类,该接口及实现类提供了显示获取和释放锁的方式. 除了上述编 ...

  6. Python:Day07 作业

    三级菜单: 自己做的代码: china = { '江苏':{ '南京':{ '江宁':{}, '白下':{}, '栖霞':{}, '江淮':{}, '浦口':{} }, '宿迁':{ '宿城区':{} ...

  7. Boost 和 Boost.Build 的设置

    问题: 安装编译完 Boost 后,如果不设置 BOOST_ROOT 和 BOOST_BUILD_PATH 则可能导致使用 bjam 时定位到 Boost 默认的路径 /usr/share/boost ...

  8. python:实例化configparser模块读写配置文件

    之前的博客介绍过利用python的configparser模块读写配置文件的基础用法,这篇博客,介绍下如何实例化,方便作为公共类调用. 实例化的好处有很多,既方便调用,又降低了脚本的维护成本,而且提高 ...

  9. php 数组元素快速去重

    1.使用array_unique方法进行去重 对数组元素进行去重,我们一般会使用array_unique方法,使用这个方法可以把数组中的元素去重. <?php $arr = array(,,,, ...

  10. Maven报错Archive for required library:某.jar' in project '项目名'

    Maven报错Archive for required library:某.jar' in project '项目名'cannot be read or is not a valid ZIP file ...