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属性文件中的配置信息,比如,加载连 ...
随机推荐
- 【JSOI2018】潜入行动
[JSOI2018]潜入行动 树形\(DP\).设\(f_{i,j,0/1,0/1}\)表示以\(i\)为根的子树中,用了\(j\)个监听器,是否放置了监听器,是否被监听的方案数.转移就多讨论几种情况 ...
- Jenkins+Ansible+Gitlab自动化部署三剑客-gitlab本地搭建
实际操作 准备linux初始环境 关闭防火墙 systemctl stop firewalld 开机自己关闭 systemctl disable firewalld 设置安全配置 为关闭 vim /e ...
- 基于Spring Boot和Shiro的后台管理系统FEBS
FEBS是一个简单高效的后台权限管理系统.项目基础框架采用全新的Java Web开发框架 —— Spring Boot 2.0.3,消除了繁杂的XML配置,使得二次开发更为简单:数据访问层采用Myba ...
- 转://如何增加linux根目录的磁盘空间(基于LVM)?
问题引出: 在测试过程中替换so文件,报磁盘空间不足的错误. ▲问题分析: 由于当时系统部署架构的考虑,把软件和数据库部署在了同一台机器上,并且给了30G的磁盘空间.系统上占用磁盘空间的有2部分,一是 ...
- 【转】dos下 和 批处理中的 for 语句的基本用法
for 语句的基本用法 : 最复杂的for 语句,也有其基本形态,它的模样是这样的: 在cmd 窗口中:for %I in (command1) do command2 在批处理文件中:for % ...
- 【vue】vue +element prop用法
简单demo 父组件:index.vue <template> <div class="app-container"> <vue-props-demo ...
- 四.js 正则表达式
一.正则表达式 1.定义:对字符串规则的描述 2.作用:可以检查字符串是否符合规则,可以按规则来截取字符串 3.定义: a.简单模式:var reg = /hello/; b.复杂模式:var reg ...
- mybatis 常用
1.新增时获得主键 <insert ...> <selectKey resultType="java.lang.Integer" keyProperty=&quo ...
- Python-网络爬虫模块-requests模块之响应-response
当requests发送请求成功后,requests就会得到返回值,如果服务器响应正常,就会接收到响应数据: Response响应中的属性和方法 常用属性: status_code: 数据类型:int ...
- sql注入的防护
一.严格的数据类型 在Java,C#等高级语言中,几乎不存在数字类型注入,而对于PHP,ASP等弱类型语言,就存在了危险. 防御数字型注入相对简单,如果不需要输入字符型数据,则可以用is_numeri ...