MyBatis全局配置文件mybatis-config.xml
1.在官方下载的mybatis-3.4.5.zip压缩包中,有我们需要的mybatis核心jar包和mybatis的快速入门的pdf文件
在mybatis的快速入门的pdf文件中,复制如下代码到我们项目中的mybatis-config.xml文件中


以上就是我们需要的简单的全局配置文件的格式
2.按住CRTL+鼠标左键点击全局配置文件的约束文件的链接:
http://mybatis.org/dtd/mybatis-3-config.dtd将文件下载到本地
或者直接解压我们下载的mybatis-3.4.5.zip压缩包,然后在解压后的文件夹中找到mybatis-3.4.5.jar,使用将其解压,在解压后的文件夹中,在mybatis-3.4.5\org\apache\ibatis\builder\xml路径下找到mybatis-3-config.dtd文件

3.向我们编写的mybatis-config.xml文件中关联dtd约束文件



现在按住alt+/就会出现提示
4.查看官方文档 Configuration XML章节,可以查看MyBatis-config.xml文件中允许使用的节点信息

4-1:properties节点
1.MyBatis可以使用properties来引入外部properties配置文件的内容
resource:引入类路径下的资源
url:引入网路路径或者磁盘路径下的资源
我们之前写的mybatis-config.xml全局配置文件,如下:

把jdbc的相关信息已经写死,现在我们可以使用properties来引入类路径下的资源
将jdbc的相关信息写成*.properties配置文件,使用properties节点将其引入
Jdbc配置文件如下

改写后的mybatis-config.xml文件如下:

4-2:settings节点
settings包含很多重要的设置项
setting:用来设置每一个设置项
name:设置项名
value:设置项取值
例如:

这是设置可以自动的将数据库的列明为A_COUNT,带下划线的列,自动转成驼峰命名aCount与javaBean进行匹配
其他还有很多重要的设置项,需要时查官方的文档
4-3:typeAliases节点
别名处理器,可以为我们的java类型起别名,别名不区分大小写
01 typeAlias为某个java类型起别名
typeAlias节点中的属性
type:指定要起别名的类型全类名,默认别名是就是类名全小 写:emp
alias:指定新的别名
例如,我们之前写的empMapper.xml文件中

可以使用Mybatis-config.xml全局配置文件为这个全限定类名起别名

现在我们的empMapper.xml可以改写为

02 typeAliases下还有一个package标签
批量起别名
package:为某个包下的类批量起别名
name属性:指定包名,为当前包以及所有的后代包中的类都起一个 默认别名(默认别名就是类名的全小写)
例如:为cn.bdqn.mybatis.been包下的所有类起别名
<typeAliases>
<package name="cn.bdqn.mybatis.been"/>
</typeAliases>
但是如果两个后代包中都同时有一个emp的话就会产生冲突,这时可以在某一个同名类中使用注解的方法为其起别名

MyBatis已经为基本数据类型和其包装类以及一些常用的类起好别名,请查看官网帮助文档
建议别用别名,使用全类名方式
4-4: typeHandlers节点 类型处理器
将java中的类型处理成数据库中的类型 例如String处理成为数据库中的varchar类型等.
可以手动进行注册和重写
4-4: plugins
这里暂时不做笔记
待后续
4-5:environments环境们,mybatis可以配置多种环境,default属性可以指定使用某种环境,从而达到快去进行环境的切换
environment:配置具体的环境信息;必须有两个标签:transactionManager 和dataSource,id属性代表当前环境的唯一标识
transactionManager:事务管理器;type属性代表事务管理器的类型,可以有两种取值JDBC(JdbcTransactionFactory)|MANGED(ManagedTransactionFactory),其实JDBC和MANGED是两个别名

自定义事务管理器,只需要实现TransactionFactory接口,Type指定全类名
dataSource 数据源
type:数据源类型,官方提供三种UNPOOLED|POOLED|JNDI 这三个也是别名

可以自定义数据源:实现DataSourceFactory接口,type就是我们自定义数据源的全类名

4-6:databaseIdProvider节点 支持多数据库厂商
type="DB_VENDOR",DB_VENDOR也是别名,指的VendorDatabaseIdProvider这个类
作用就是得到数据库厂商的标识(驱动自带),Mybatis就能根据数据库厂商标识来执行不同的sql
property.为不同的数据库厂商起别名
例如:

然后到映射文件中进行修改

4-7:mapper将我们写好的SQL映射文件(empMapper.xml)一定要注册到全局配置文件中 (mybatis-config.xml)
mappers:将sql映射注册到全局配置中
注册文件:
resource:引入类路径下的sql映射文件
url:引用网络路径或磁盘路径下的sql映射文件
注册接口:
class:直接引用(注册)接口
1.有sql映射文件,映射文件名必须与接口同名.并且放在与接口同一目录下;
2.没有sql映射文件,所有的sql都是利用注解写在接口上
推荐:比较重要的DAO接口我们来写SQL映射文件
不重要的,简单的dao接口为来快速开发可以使用注解
package 批量注册有sql映射文件,映射文件名必须与接口同名.并且放在与接口同一目录下;
name用来指定包名
MyBatis全局配置文件mybatis-config.xml的更多相关文章
- MyBatis全局配置文件MyBatis-config.xml代码
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC ...
- Mybatis学习(3)关于mybatis全局配置文件SqlMapConfig.xml
比如针对我这个项目的mybatis全局配置文件SqlMapConfig.xml做一些说明: <?xml version="1.0" encoding="UTF-8& ...
- Mybatis全局配置文件详解(三)
每个基于Mybatis应用都是以一个SqlSessionFactory实例为中心.SqlSessionFactory实例可以由SqlSessionFactoryBuild获得,而SqlSessionF ...
- MyBatis 全局配置文件详解(七)
MyBatis 配置文件作用 MyBatis配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息.它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信息和设置功能.其 ...
- IntelliJ IDEA中,mybatis的配置文件(map.xml)无法编译到class文件夹下
编译工具:IntelliJ IDEA 项目结构:maven 项目框架:SSM 问题:java目录下,mybatis的配置文件(map.xml)无法编译到class文件夹下 问题原因:在idea中,直接 ...
- Spring+SpringMVC+MyBatis深入学习及搭建(三)——MyBatis全局配置文件解析
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6874672.html 前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(二)——My ...
- (六)mybatis 全局配置文件讲解
目录 properties (属性) settings 全局参数配置 typeAliases 别名设置 typeHandlers 类型处理器 mapper (映射器) 细节 properties (属 ...
- MyBatis全局配置文件的各项标签3
mapper 将sql映射注册到全局配置中,这个我们在上一章已经使用过了, resource 这个属性是用来引用类路径下的sql映射文件 url 这个属性是用来引用网络路径或磁盘路径下的sql映射文件 ...
- MyBatis全局配置文件标签详解
一.全局配置文件结构 configuration 配置 properties 属性:可以加载properties配置文件的信息 settings 设置:可以设置mybatis的全局属性 typeAli ...
随机推荐
- webpack4.x相关笔记整理
概念 Webpack是一个模块打包机,它可以将我们项目中的所有js.图片.css等资源,根据其入口文件的依赖关系,打包成一个能被浏览器识别的js文件.能够帮助前端开发将打包的过程更智能化和自动化. W ...
- IDEA Maven 项目默认编译项目为JDK 1.5
昨天晚上遇到一个问题,我在idea中创建了有个maven项目,想使用jdk1.8的lambda表达式,结果提示我错误,是1.8才可以.当时我想我的jdk就是1.8啊.经过各种搜索,才知道maven默认 ...
- html 框架 內聯框架
框架的作用:可以在瀏覽器同時顯示不止一個html頁面.一個html文檔也叫做一個框架. 垂直框架:設置窗口垂直排列顯示成一行 <frameset cols="20%,80%" ...
- codeforces701C
They Are Everywhere CodeForces - 701C 大B,年轻的口袋妖怪训练师,找到了一个由 n 间从左向右的房间组成的大房子.你可以从街道里走入任何一间房子,也可以从任何一间 ...
- 工作中经常用到github上优秀、实用、轻量级、无依赖的插件和库
原文收录在我的 GitHub博客 (https://github.com/jawil/blog) ,喜欢的可以关注最新动态,大家一起多交流学习,共同进步,以学习者的身份写博客,记录点滴. 按照格式推荐 ...
- 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表
点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路15.5 Zabbix数据库表结构简单解析-其他 表 1. Actions表 ...
- 洛谷 P2515 [HAOI2010]软件安装 解题报告
P2515 [HAOI2010]软件安装 题目描述 现在我们的手头有\(N\)个软件,对于一个软件\(i\),它要占用\(W_i\)的磁盘空间,它的价值为\(V_i\).我们希望从中选择一些软件安装到 ...
- 洛谷 P2467 地精部落 解题报告
P2467 [SDOI2010]地精部落 题目描述 传说很久以前,大地上居住着一种神秘的生物:地精. 地精喜欢住在连绵不绝的山脉中.具体地说,一座长度为\(N\)的山脉\(H\)可分为从左到右的\(N ...
- 使用ntlmrelayx在任何地方进行中继凭据
0x00 前言 通过Fox-IT我们可以让客户了解其企业组织中出现的常见安全风险.当攻击者可以利用NT LAN Manager身份验证协议(以下简称:NTLM身份验证)时,凭据重用就有这样的风险,即这 ...
- X11,GTK,QT,GNOME的区别与联系(UI工具总结)
1,X11是X Window System Protocol, Version 11(RFC1013),是X server和X client之间的通信协议.X server是xfree86/xorg驱 ...