MyBatis系列:二、配置文件详解

本文会详细介绍MyBatis的常用配置

1.properties节点

<properties resource="mybatis-config.properties">
  <property name="username" value="dev_user"/>
  <property name="password" value="123456"/>
</properties>
resource配置了外部配置类,表示我们某些配置会放在外部,同时支持目前比较流行的 yml文件property节点中的元素可以被下面的其他节点作为变量引用,引用语法为${key}例如:下面的节点中,username 和password两个节点的内容会从properties中获取,而driver和url则会从外部配置文件中读取如果外部配置文件中与properties中有冲突的配置,会采用外部配置文件的配置
<dataSource type="POOLED">
  <property name="driver" value="${driver}"/>
  <property name="url" value="${url}"/>
  <property name="username" value="${username}"/>
  <property name="password" value="${password}"/>
</dataSource>

从 3.4.2版本开始,我们可以为参数指定一个默认值写法为

首先开启默认值的使用

<properties resource="mybatis-config.properties">

 <property name="org.apache.ibatis.parsing.PropertyParser.enable-default-value" value="true"/> 

</properties>

如果username 没有值,会采用默认值ut_user

 <property name="username" value="${username:ut_user}"/>

2.关键设置

<settings>//开启全局缓存,默认开启
  <setting name="cacheEnabled" value="true"/>//开启延时加载,默认关闭
  <setting name="lazyLoadingEnabled" value="true"/>//按需加载对象属性。默认关闭,如果开启了会加载对象的所有属性
  <setting name="multipleResultSetsEnabled" value="true"/>//使用数据库列别名代替列名,默认开启
  <setting name="useColumnLabel" value="true"/>//允许JDBC自动生成主键,默认关闭且需要驱动支持
  <setting name="useGeneratedKeys" value="false"/>//映射策略,默认PARTIAL只会映射没有定义嵌套的结果集
  <setting name="autoMappingBehavior" value="PARTIAL"/>//发现未知列时的策略默认为NONE不做提醒
  <setting name="autoMappingUnknownColumnBehavior" value="NONE"/>//配置默认的执行器默认SIMPLE
  <setting name="defaultExecutorType" value="SIMPLE"/>//自动超时时间
  <setting name="defaultStatementTimeout" value="25"/>
  //允许在嵌套语句中使用分页,默认False
  <setting name="safeRowBoundsEnabled" value="false"/>

//是否开启驼峰命名映射默认False
  <setting name="mapUnderscoreToCamelCase" value="false"/>//本地缓存策略默认SESSION
  <setting name="localCacheScope" value="SESSION"/>//没有为参数提供JDBC类型时,的默认类型,一般为OTHER
  <setting name="jdbcTypeForNull" value="OTHER"/>

//定义触发延时加载的方法:逗号分隔
  <setting name="lazyLoadTriggerMethods" value="equals,clone,hashCode,toString"/>
</settings>

3.映射器

用于配置MyBatis 到哪里去找映射文件

<mappers>
  <mapper resource="org/mybatis/builder/AuthorMapper.xml"/>
  <mapper resource="org/mybatis/builder/BlogMapper.xml"/>
  <mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
<mappers>
  <mapper class="org.mybatis.builder.AuthorMapper"/>
  <mapper class="org.mybatis.builder.BlogMapper"/>
  <mapper class="org.mybatis.builder.PostMapper"/>
</mappers>
 

4.类别名

因为我们会写很多重复的包名,所以我们需要统一定义一下这些名称的缩写

这样剩下使用domain.blog.Blog的地方只需要写Blog就可以了

<typeAliases>
  <typeAlias alias="Blog" type="domain.blog.Blog"/>
</typeAliases>

原文地址:https://www.cnblogs.com/Tassdar/p/12078266.html

时间: 2024-11-05 06:25:14

MyBatis系列:二、配置文件详解的相关文章

mybatis系列-05-SqlMapConfig.xml详解

mybatis的全局配置文件SqlMapConfig.xml,配置内容如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境集合属性对象) environment(环境子属性对象) transactionManager(事务管理) dataSource(数据源) mappers(映射器) 5.1     pro

Mybatis学习--XML配置文件详解

在配置的Mybatis的时候,我们可以通过一个XML来配置,也可以嵌入到其他配置文件中, 比如Spring的applicationContext.xml中. MyBatis 的 XML 配置文件包含了影响 MyBatis 行为甚深的设置和属性信息. XML 文档 的高层级结构如下: configuration 配置 properties 属性 settings 设置 typeAliases 类型命名 typeHandlers 类型处理器 objectFactory 对象工厂 plugins 插件

mybatis加载配置文件详解

spring整合Mybatis后,SqlSessionFactory的创建由spring进行了代理,以下是SqlSessionFactory创建的流程 SqlSessionFactoryBean: public class SqlSessionFactoryBean implements FactoryBean<SqlSessionFactory>, InitializingBean, ApplicationListener<ApplicationEvent> { private

Vue学习系列(二)——组件详解

前言 在上一篇初识Vue核心中,我们已经熟悉了vue的两大核心,理解了Vue的构建方式,通过基本的指令控制DOM,实现提高应用开发效率和可维护性.而这一篇呢,将对Vue视图组件的核心概念进行详细说明. 什么是组件呢? 组件可以扩展HTML元素,封装可重用的HTML代码,我们可以将组件看作自定义的HTML元素. 为什么要用到组件呢? 为了可重用性高,减少重复性开发,让我们可以使用独立可复用的小组件来构建大型应用. 基本 一.组件注册 1.通过Vue.extend()创建,然后由component来

MyBatis—02—代替Dao层的mapper映射文件;MyBatis配置文件详解

一. Mapper 映射文件 在JDBC中,我们会把访问数据库的代码放在Dao层,也就是建一个com.dao的package: 但在 MyBatis 中, 我们的包名推荐使用 mapper ,  并且我们只需要写一个映射配置文件即可, 不需要写接口和实现类了. UserMapper.xml, 用于定义要执行的 SQL 语句, 同时设定返回结果的类型. 1.编写mapper层的xml映射文件 2. 在MyBatis核心配置文件中添加 mapper 扫描 3.测试 二. MyBatis 配置文件详解

Android自定义控件系列八:详解onMeasure()(二)--利用onMeasure测量来实现图片拉伸永不变形,解决屏幕适配问题

上一篇文章详细讲解了一下onMeasure/measure方法在Android自定义控件时的原理和作用,参看博文:Android自定义控件系列七:详解onMeasure()方法中如何测量一个控件尺寸(一),今天就来真正实践一下,让这两个方法大显神威来帮我们搞定图片的屏幕适配问题. 请尊重原创劳动成果,转载请注明出处:http://blog.csdn.net/cyp331203/article/details/45038329,非允许请勿用于商业或盈利用途,违者必究. 使用ImageView会遇到

Spring Boot2 系列教程 (五) | yaml 配置文件详解

自定义属性加载 首先构建 SpringBoot 项目,不会的看这篇旧文 使用 IDEA 构建 Spring Boot 工程. 首先在项目根目录 src >> resource >>?application.properties 文件下加入以下自定义属性: # 防止读取乱码 spring.http.encoding.charset=UTF-8 # 项目启动端口 server.port=9999 # 自定义配置 com.nasus.author.name=一个优秀的废人 com.nas

Nginx知多少系列之(三)配置文件详解

原文:Nginx知多少系列之(三)配置文件详解 目录 1.前言 2.安装 3.配置文件详解 4.工作原理 5.Linux下托管.NET Core项目 6.Linux下.NET Core项目负载均衡 7.Linux下.NET Core项目Nginx+Keepalived高可用(主从模式) 8.Linux下.NET Core项目Nginx+Keepalived高可用(双主模式) 9.Linux下.NET Core项目LVS+Keepalived+Nginx高可用集群 10.构建静态服务器 11.日志

RHEL7下Nginx配置文件详解(二)

RHEL7下Nginx配置文件详解 全局配置 #user  nobody nobody;//指定Nginx进程运行用户以及用户组. worker_processes  1;//开启的进程数. #error_log  logs/error.log;//定义全局错误日志 #error_log  logs/error.log  notice; //定义全局错误日志 #error_log  logs/error.log  info; //定义全局错误日志 #pid        logs/nginx.p

【JAVAEE学习笔记】hibernate01:简介、搭建、配置文件详解、API详解和CRM练习:保存客户

今日学习:hibernate是什么 一.hibernate是什么 框架是什么: 1.框架是用来提高开发效率的 2.封装了好了一些功能.我们需要使用这些功能时,调用即可.不需要再手动实现. 3.所以框架可以理解成是一个半成品的项目.只要懂得如何驾驭这些功能即可. hibernate框架是什么: hibernate的好处: 操作数据库的时候,可以以面向对象的方式来完成.不需要书写SQL语句 hibernate是一款orm框架: orm:object relationg mapping. 对象关系映射