Mybatis(二)--SqlMapConfig.xml配置文件
一.简介
SqlMapConfig.xml是Mybatis的全局配置文件,我们在写mybatis项目时,在SqlMapConfig.xml文件中主要配置了数据库数据源、事务、映射文件等,其实还有很多配置信息,例如:
*properties(属性)
--property
*settings(全局配置参数)
--setting
*typeAliases(类型别名)
--typealiase
--package
*typeHandlers(类型处理器)
*objectFactory(对象工厂)
*plugins(插件)
*environments(环境集合属性对象)
--environment(环境子属相对象)
--transactionManager(事务管理)
--dataSource(数据源)
*mappers(映射器)
--mapper
--package
二.主要配置信息:
1.properties(属性):使用此标签配置时,我们可以采用两种方式来配置(个人感觉第二种配置方式不错):
*value值可直接写上你所拥有的数据库信息,本机号、账户及密码等。
<properties>
<property name="jdbc.driver"
value="com.mysql.jdbc.Driver"/>
<property name="jdbc.url"
value="jdbc:mysql://localhost:3306/eesy"/>
<property name="jdbc.username"
value="root"/>
<property name="jdbc.password"
value="1234"/>
</properties>
*可以在根目录下创建xxx.properties文件,然后对其引用。其内容为:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://本机地址/所要操作的数据库名
jdbc.username=账户
jdbc.password=密码
<properties resource="xxx.properties"/>
<dataSource type="POOLED">
<property name="driver" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</dataSource>
</properties>
其中
resource属性是指用于指定xxx.properties文件的位置,要求配置文件必须在类路径下.
dataSource属性是指数据源配置.
type属性指定相应的数据源:Mybatis将本身数据源分成三类:
*UNPOOLED:不使用连接池的数据源;
*POOLED:使用连接池的数据源;
*JNDI:使用JNDI实现的数据源。
2.settings(全局配置参数):mybatis框架在运行时可以调整一些运行参数。比如:开启二级缓存、开启延迟加载。全局参数将会影响mybatis的运行行为。例:
settings配置
setting ( name) |
Description (描述) |
Values (值) |
Default (默认值) |
cacheEnabled | 在全局范围内启用或禁用缓存配置 任何映射器在此配置下。 | true | false | true |
lazyLoadingEnabled | 在全局范围内启用或禁用延迟加载。禁用时,所有相关联的将热加载 | true | false | true |
logPrefix | 指定的前缀字串,MyBatis将会增加记录器的名称 | Any String | Not set |
<settings>
<!-- 开启二级缓存的支持 -->
<setting name="cacheEnabled" value="true"/>
</settings>
等,还有很多,可以去百度搜索。
3.typeAliases(类型别名):之前我们在书写SQL语句的xml中resultType属性用于指定结果集的类型,parameterType属性用于指定传入参数的类型。指定时要写入全路径,这样不方便项目的开发,如此可以针对这几个属性起一些别名,通过别名来定义。下面我们来自定义别名:
在 SqlMapConfig.xml 中配置:
<typeAliases>
<!-- 单个别名定义 -->
<typeAlias alias="user" type="com.it.domain.User"/>
<!-- 批量别名定义,扫描整个包下的类,别名为类名(首字母大写或小写都
可以) -->
<package name="com.it.domain"/>
<package name="其它包"/>
</typeAliases>
4.mappers(映射器):
*通过resource加载单个映射文件,如:
<mapper resource="com/it/dao/IUserDao.xml"/>
*通过mapper接口加载单个映射文件,如:
<mapper resource="com.it.dao.IUserDao"/>
注:此方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。
*注册指定包下的所有 mapper 接口 ,如:
<mapper resource="com.it.dao"/>
注:此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中。
关于SqlMapConfig.xml配置文件我们就讲到这里。有什么问题@我,互帮互助,共同进步。
Mybatis(二)--SqlMapConfig.xml配置文件的更多相关文章
- MyBatis学习--SqlMapConfig.xml配置文件
简介 SqlMapConfig.xml是MyBatis的全局配置文件,在前面的文章中我们可以看出,在SqlMapConfig.xml主要是配置了数据源.事务和映射文件,其实在SqlMapConfig. ...
- sqlMapConfig.xml配置文件详解
sqlMapConfig.xml配置文件详解: Xml代码 Xml代码 <? xml version="1.0" encoding="UTF-8" ?& ...
- SqlMapConfig.xml配置文件中的properties属性
1.原始的SqlMapConfig.xml配置文件的内容为: <?xml version="1.0" encoding="UTF-8" ?> < ...
- mybatis 中的 xml 配置文件中 ‘<’、 ‘>’ 处理
mybatis 中的 xml 配置文件中 '<'. '>' 处理 1.使用转义字符将 '<'. '>' 替换掉. 描述 字符 转义字符 小于号 < < 大于号 &g ...
- Mybatis学习笔记(四) —— SqlMapConfig.xml配置文件
一.properties(属性) SqlMapConfig.xml可以引用java属性文件中的配置信息 在config下定义db.properties文件,如下所示: db.properties配置文 ...
- Mybatis框架基础入门(四)--SqlMapConfig.xml配置文件简介
SqlMapConfig.xml中配置的内容和顺序如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) o ...
- 五 mybatis的SqlMapConfig.xml详解
SqlMapConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE conf ...
- SqlMapConfig.xml配置文件
SqlMapConfig.xml中配置的内容和顺序如下: 1.1 properties(属性) mybatis的属性加载顺序.读取顺序:properties------>resource或url ...
- 如何把Mybatis的Mapper.xml配置文件和dao接口放在同一个包下
有的时候我们在Maven项目中写关于Mybatis的项目时,会涉及到很多的实体类,也就会涉及到很多的dao接口,如果此时我们仍然把dao接口和xml写在同一个包下,会让项目接口变得很乱,杂七杂八的,所 ...
随机推荐
- ABBYY FineReader 15新增智能PDF文档转换功能
ABBYY FineReader 15(Windows系统)新增智能PDF文档转换功能,可自动检测导入PDF数字文档的文本层质量,确保转变为可编辑格式后的准确结果:从表单字段和文本框中提取文本,准确保 ...
- 如何修改Docker的默认网段?
背景 公司的服务器全部都是购买的阿里云ECS主机,默认内网网段为172.16.0.0/12,测试服上的服务基本都是使用Docker部署的. 之前的同事在该机器上安装的Docker全部都是默认配置,网段 ...
- C语言基础知识:几种特殊的函数宏封装方式
函数宏介绍 函数宏,即包含多条语句的宏定义,其通常为某一被频繁调用的功能的语句封装,且不想通过函数方式封装来降低额外的弹栈压栈开销. 函数宏本质上为宏,可以直接进行定义,例如: #define INT ...
- seata
启动seataserver: 回滚日志: server日志: file模式的文件 整个过程如果观察数据库变化的话,会发现事务是先提交了的,出现异常之后由seata又回滚回去
- Linux初学学习笔记 -----正则表达式和通配符
简单来说通配符是用来匹配文件名和目录而正则表达式是用来匹配文本内容的 常用的通配符 *:匹配任意多个字符 下面的是以p为开头的目录里面的文件 ?:匹配任意一个字符 [-]:匹配括号内出现的任意一个字符 ...
- 不使用 MQ 如何实现 pub/sub 场景?
hello,大家好,我是小黑,又和大家见面啦~~ 在配置中心中,有一个经典的 pub/sub 场景:某个配置项发生变更之后,需要实时的同步到各个服务端节点,同时推送给客户端集群. 在之前实现的简易版配 ...
- k8s+docker_part2
docker+k8s 目录 docker+k8s 1 简介 1.1 docker是什么 1.2 为什么要用docker 1.2.1 docker容器虚拟化的好处 1.2.2 docker在开发和运维中 ...
- InnoDB 中的缓冲池(Buffer Pool)
本文主要说明 InnoDB Buffer Pool 的内部执行原理,其生效的前提是使用到了索引,如果没有用到索引会进行全表扫描. 结构 在 InnoDB 存储引擎层维护着一个缓冲池,通过其可以避免对磁 ...
- 你的Idea还可用吗?不妨试试这个神器!
@ 目录 一.STS安装 1.STS下载 2.STS安装 二.STS使用 1.STS配置JDK 2.STS配置Maven 3.使用STS创建SpringBoot项目 三.优化STS 1.主题美化 2. ...
- Python模块是否支持自定义属性使用双下划线开头和结尾?
我们知道在Python中,变量名类似__xxx__的,也就是以双下划线开头并且以双下划线结尾的变量和方法,是特殊变量,特殊变量是可以直接访问的,不是私有变量,所以,一般实例变量和类变量以及方法不能用_ ...