MyBaits全局配置文件的各项标签1
■dtd约束
- <!DOCTYPE configuration
- PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-config.dtd">
为了编写简单,在我们写标签时会有代码提示,所以这个约束很有必要,一般联网情况下,我们只要写上上面代码的最后一行即可。
■properties
这个标签主要是把我们在主配置文件中,关于数据库连接的部分配置抽离出来,通过配置文件的方式进行配置,当然在SSM整合中,这一项是交给Spring帮我们完成的,现在已经很少用到了。
- 编写配置文件
- 创建一个配置文件dbconfig.properties
- 写入一下配置信息
- jdbc.driver=com.mysql.jdbc.Driver
- jdbcjdbc.url=jdbc:mysql://localhost:3306/mybatis_learn
- jdbc.username=root
- jdbc.password=*******
2.在总配置文件中引入这个文件
<properties resource="dbconfig.properties"/>
3.将dataSource标签里dbconfig.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}"/>
■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查询,在返回类型上都写这种全限定名,就会很麻烦,也不容易读,因此有了这个标签
- <typeAliases>
- <typeAlias type="com.figsprite.bean.Employee" />
- </typeAliases>
如果我们这样书写,默认的别名会是包名首字母小写,也就是employee,当然我们也可以通过typeAlias中的alias属性指定别名
- <typeAliases>
- <typeAlias type="com.figsprite.bean.Employee" alias="emp"/>
- </typeAliases>
通过这种方式,我们可以看到,每次为类起个别名都要一个typeAlias标签,如果我们JavaBean里有很多类,该如何快速的一次性起这些标签呢?我们需要用到package标签
- <typeAliases>
- <package name="com.figsprite.bean"/>
- </typeAliases>
这种方法所提供的别名是默认别名(即字母小写,其实别名不区分大小写= =),当然这种方法也有可能出现小问题,如果bean包下有个子包里面也有Employee类,那么Mybatis也会给他起一个相同别名,这样运行起来就有可能报错,这时我们就可以使用注解的方式,在JavaBean里使用@Alisa("emp")注解,起别名,MyBatis给我们起好了常用的几个包和类型的别名。我们起别名不能和这些冲突,其实建议我们使用全限定名的方式,这样容易定位类。


MyBaits全局配置文件的各项标签1的更多相关文章
- MyBaits全局配置文件的各项标签2
▲typeHandlers 类型处理器,它架起数据库和JavaBean一一映射的桥梁,这里需要注意一下,java在JDK1.8之前,日期处理函数并不丰富,但在JDK1.8之后引入JSR-310标准,这 ...
- MyBatis全局配置文件的各项标签3
mapper 将sql映射注册到全局配置中,这个我们在上一章已经使用过了, resource 这个属性是用来引用类路径下的sql映射文件 url 这个属性是用来引用网络路径或磁盘路径下的sql映射文件 ...
- MyBaits 全局配置文件(mybatis-config.xml)
什么是 MyBatis 全局配置文件 MyBatis 全局配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息. 它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信 ...
- MyBatis全局配置文件标签详解
一.全局配置文件结构 configuration 配置 properties 属性:可以加载properties配置文件的信息 settings 设置:可以设置mybatis的全局属性 typeAli ...
- Mybatis的全局配置文件标签介绍(mybatis-config.xml)
全局配置文件中本人只记录了常用的几个 typeHandlers, objectFactory,objectWrapperFactory, reflectorFactory, plugins, dat ...
- mybatis全局配置文件
一.properties:引入外部配置文件 1.resource :引入类路径下的全局配置文件,例如:<properties resource="conf/dbconfig.prope ...
- 02、MyBatis XML 全局配置文件
MyBatis-全局配置文件 在MyBatis中全局配置文件有着重要的地位,里面有9类行为信息;如果我们要想将MyBatis运用的熟练,配置全局配置文件是必不可少的步骤,所以我们一定要啃下这一块硬骨头 ...
- maven全局配置文件settings.xml详解
概要 settings.xml有什么用? 如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径. settings.xml文件是干什么的,为什么要配置它 ...
- Mybatis学习(二)————— 全局配置文件详解
一.全部配置内容 SqlMapConfig.xml的配置内容和顺序如下,顺序不能乱.现在来对这些属性的意思一一进行讲解. 二.properties 作用:引用java属性文件中的配置信息,比如,加载连 ...
随机推荐
- UVA1613-K-Graph Oddity(贪心)
Problem UVA1613-K-Graph Oddity Accept: 108 Submit: 884Time Limit: 3000 mSec Problem Description Inp ...
- tensorflow中的Supervisor
tf.train.Supervisor()可以帮我们简化一些事情,可以保存模型参数和Summary,它有以下的作用: 1)自动去checkpoint加载数据或初始化数据 ,因此我们就不需要手动初始化或 ...
- 自然语言处理之LDA主题模型
1.LDA概述 在机器学习领域,LDA是两个常用模型的简称:线性判别分析(Linear Discriminant Analysis)和 隐含狄利克雷分布(Latent Dirichlet Alloca ...
- P1897 电梯里的爱情
简单模拟: 没什么好说的,因为范围比较水,所以直接按题意直接模拟1就好 #include<iostream> using namespace std; #define ll long lo ...
- 【转】C盘不能扩展卷怎么回事 C盘扩展卷灰色的解决办法
今天有百事网网友“丅亿页”遇到了这样一个问题:电脑C盘剩余容量太小,在看到百事网的一篇“如何合并磁盘分区 windows7调整分区大小方法”文章后,也想将自己C盘系统盘空间扩大.按照上面文章中介绍的步 ...
- spring boot启动报错
Exception encountered during context initialization - cancelling refresh attempt: org.springframewor ...
- 测试 Flask 应用
测试 Flask 应用 没有经过测试的东西都是不完整的 这一箴言的起源已经不可考了,尽管他不是完全正确的,但是仍然离真理不远.没有测试过的应用将会使得提高现有代码质量很困难,二不测试应用程序的开发者, ...
- 使用BBED跳过归档进行恢复
https: 使用BBED跳过归档进行恢复 数据库启动异常,提示6号文件丢失 SQL> startup ORACLE instance started. Total System Global ...
- mysql安装-CentOS6下解压安装mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz
删除已经安装版本 yum list installed mysql [root@localhost ~]# yum list installed mysql Loaded plugins: faste ...
- 外部python脚本调用django 手动清理session
调试orm 在django项目根目录下创建文件test_orm.py,它和manage.py是同级的 import os if __name__ == "__main__": # ...