MyBatis系列(三) MyBatis 配置文件
一、properties
此标签的主要作用是引用配置文件,以数据源来举例。
新建mybatis-confing.properties配置文件
mybatis-confing.properties
- driver=com.mysql.cj.jdbc.Driver
- url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useSSL=false
- username=root
- password=Yuhao@520
在MyBatis配置文件mybatis-confing.xml文件中引用外部配置文件
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE configuration
- PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
- <!-- 引用mybatis-confing.properties配置文件 -->
- <properties resource="mybatis-confing.properties" />
- <environments default="development">
- <environment id="development">
- <transactionManager type="JDBC" />
- <dataSource type="POOLED">
- <!-- 可以通过${}标签结合外部配置文件的属性名称进行配置引用 -->
- <property name="driver" value="${driver}" />
- <property name="url" value="${url}" />
- <property name="username" value="${username}" />
- <property name="password" value="${password}" />
- </dataSource>
- </environment>
- </environments>
- <!-- 将我们写好的sql映射文件(PolicyMapper.xml)一定要注册到全局配置文件(mybatis-config.xml)中 -->
- <mappers>
- <mapper resource="PolicyMapper.xml" />
- </mappers>
- </configuration>
二、setting
settings是MyBatis中最复杂的配置,它能影响MyBatis底层的运行,大部分情况下使用默认值,如果需要改动只需要改动需要用到的部分即可。
三、typeAliases
类型别名是为 Java 类型设置一个短的名字。 它只和 XML 配置有关,存在的意义仅在于用来减少类完全限定名的冗余。
MyBatis全局配置文件
- <typeAliases>
- <typeAlias alias="Music" type="com.mybatis.bean.music" />
- </typeAliases>
在需要使用全量的地方可使用别名,如:
SQL的resultType上可以直接使用Policy不需要再写全量类名
- <?xml version="1.0" encoding="UTF-8" ?>
- <!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.mybatis.dao.selectall">
- <select id="selectmusicall" resultType="Music">
- select id,name,music,musicurl from test where name = #{name};
- </select>
- </mapper>
注解的方式起别名,在包com.mybatis.bean下的类中使用@Alias注解的类,可以直接使用注解属性,实现与typeAlias给定别名一样的效果。
Music类
- @Alias("Music")
- public class Music{
- ...
- }
MyBatis全局配置文件
- <typeAliases>
- <package name="com.mybatis.bean" />
- </typeAliases>
四、environments
环境配置可以通过default来选择连接到那个数据源,可以用来做不同环境的切换。
- <environments default="dev_sit">
- <!-- 使用environment标签,可以根据环境的不同进行连接库的切换 -->
- <environment id="dev_sit">
- <transactionManager type="JDBC" />
- <dataSource type="POOLED">
- <!-- 可以通过${}标签结合外部配置文件的属性名称进行配置引用 -->
- <property name="driver" value="${sit_driver}" />
- <property name="url" value="${sit_url}" />
- <property name="username" value="${sit_username}" />
- <property name="password" value="${sit_password}" />
- </dataSource>
- </environment>
- <environment id="dev_uat">
- <transactionManager type="JDBC" />
- <dataSource type="POOLED">
- <!-- 可以通过${}标签结合外部配置文件的属性名称进行配置引用 -->
- <property name="driver" value="${uat_driver}" />
- <property name="url" value="${uat_url}" />
- <property name="username" value="${uat_username}" />
- <property name="password" value="${uat_password}" />
- </dataSource>
- </environment>
- </environments>
五、mappers
SQL映射有四种实现方式
使用相对于类路径的资源引用
- <mappers>
- <mapper resource="MyBatisMapper/MusicMapper.xml"/>
- </mappers>
使用完全限定资源定位符(URL)
- <mappers>
- <mapper url="file:///var/mappers/AuthorMapper.xml"/>
- <mapper url="file:///var/mappers/BlogMapper.xml"/>
- <mapper url="file:///var/mappers/PostMapper.xml"/>
- </mappers>
使用映射器接口实现类的完全限定类名
- <mappers>
- <mapper class="org.mybatis.builder.AuthorMapper"/>
- <mapper class="org.mybatis.builder.BlogMapper"/>
- <mapper class="org.mybatis.builder.PostMapper"/>
- </mappers>
将包内的映射器接口实现全部注册为映射器
- <mappers>
- <package name="org.mybatis.builder"/>
- </mappers>
MyBatis系列(三) MyBatis 配置文件的更多相关文章
- MyBatis系列三 之 使用getMapper剔除掉Dao的实现类
MyBatis系列三 之 使用getMapper剔除掉Dao的实现类 我们在系列一 中 我们使用的是Dao的实现类 来操作底层数据库,今天我们使用getMapper()来替换Dao的实现类, ...
- 深入浅出Mybatis系列三-配置详解之properties与environments(mybatis源码篇)
注:本文转载自南轲梦 注:博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 上篇文章<深入浅出Mybatis系列(二)---配置简介(mybatis源码篇 ...
- 深入浅出Mybatis系列一-Mybatis入门
注:本文转载自南轲梦 注:博主 Chloneda:个人博客 | 博客园 | Github | Gitee | 知乎 最近两年 springmvc + mybatis 的在这种搭配还是蛮火的,楼主我呢, ...
- Mybatis系列(三):Mybatis实现关联表查询
原文链接:http://www.cnblogs.com/xdp-gacl/p/4264440.html 一.一对一关联 1.1.提出需求 根据班级id查询班级信息(带老师的信息) 1.2.创建表和数据 ...
- MyBatis学习(三)---MyBatis和Spring整合
想要了解MyBatis基础的朋友可以通过传送门: MyBatis学习(一)---配置文件,Mapper接口和动态SQL http://www.cnblogs.com/ghq120/p/8322302. ...
- mybatis入门(三):mybatis的基础特性
mybatis的知识点: 1.mybatis和hibernate本质区别和应用场景 hibernate:是一个标准的ORM框架(Ojbect relation mapper对象关系映射).入门门槛较高 ...
- 深入迁出mybatis系列
本系列教程均源于南柯梦,经好库文摘转发,感谢南柯梦的辛苦整理. 深入迁出mybatis系列 深入浅出Mybatis系列(一)---Mybatis入门 深入浅出Mybatis系列(二)---配置简介(m ...
- MyBatis学习系列三——结合Spring
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring MyBatis在项目中应用一般都要结合Spring,这一章主要把MyBat ...
- Mybatis系列(三)XML
Mybatis系列(三)XML 1.pom.xml依赖: <?xml version="1.0" encoding="UTF-8"?> <pr ...
- Mybatis系列全解(四):全网最全!Mybatis配置文件XML全貌详解
封面:洛小汐 作者:潘潘 做大事和做小事的难度是一样的.两者都会消耗你的时间和精力,所以如果决心做事,就要做大事,要确保你的梦想值得追求,未来的收获可以配得上你的努力. 前言 上一篇文章 <My ...
随机推荐
- shell $x的含义
linux中shell变量$#,$@,$0,$1,$2的含义解释: 变量说明: $$ Shell本身的PID(ProcessID) $! Shell最后运行的后台Process的PID $? 最后运行 ...
- Ingress-Nginx
注意: 本文只用的ingress-nginx版本为0.24.1,可在官方网站自行下载 https://github.com/kubernetes/ingress-nginx 一.Ingress-Ng ...
- Linux shell while循环语句
for :明确循环次数 while :不确定循环换次数 while循环 (1) while CONDITION:do statement statement < ...
- HDU 2612 Find a way 题解
Find a way Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total ...
- win10锁屏壁纸文件夹位置
Win10默认系统下载的壁纸怎么下载?在哪里找出来呢?首先我们要把系统的锁屏壁纸要设置为Windows聚焦才会自动从微软的服务器上去下载壁纸.这些都是随机下载的.每个人的都Win10 都有可能不一样. ...
- 【Linux】文件拷贝-Linux当前目录所有文件移动到上一级目录(转)
Linux当前目录所有文件移动到上一级目录 mv * ../
- serialize()和new FormData()的区别
serialize()和FormData对象都可将表单数据序列化,后通过ajax异步提交 ,序列化表单就是将form表单中所有name属性序列化成KEY-VALUE的形式,提交到后台,后台以对象相应的 ...
- 复制excel表中的数据
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- SQL Server 默认跟踪(Trace)捕获事件详解
SQL Server 默认跟踪 -- 捕获事件详解 哪些具体事件默认跟踪文件能够捕获到? --returns full list of events SELECT * FROM sys.trace_e ...
- monkey--常用参数
前戏 参数分类:常规类参数,事件类参数,约束类参数,调试类参数 常规类参数:常规类参数包括帮助参数和日志信息参数,帮助参数用于输出monkey命令使用指导,日志信息参数将日志分为三个等级,级别越高,日 ...