MyBatis之优化MyBatis配置文件中的配置

2017/9/30

MyBatis配置文件很重要,首先我们来看看MyBatis配置文件中的内容和顺序:

文件目录结构如下:

1.<properties>属性定义

可以把一些通用的属性值配置在属性文件中,加载到mybatis运行环境内。例如创建db.properties文件,然后在SqlMapperConfig.xml中进行配置。db.properties文件内容如下:

然后在SqlMapperConfig.xml中进行配置:

然后在<environments>标签中用${}符号做如下修改:

注意:Mybatis将按照下面的顺序来加载属性

  • 1.在properties标签之间定义的属性首先被读取。
  • 2.然后会读取properties标签内部resource或url的属性,它会覆盖已读取的同名属性。
  • 3.最后读取parameterType(即insert标签或是update标签或是…)传递的属性,它会覆盖已读取的同名属性。

所以我们建议使用properties标签时,不要在properties标签之间定义属性,只引用在.properties文件中定义的属性,并且.properties文件中定义的key值要有一些特殊的规则。例如我上述定义key值时前面都加了jdbc.的前缀。

2.<settings>全局参数配置

mybatis运行时可以调整一些全局参数(相当于软件的运行参数)。根据使用需求进行参数配置。但是要注意:小心配置,配置参数会影响mybatis的执行。

ibatis的全局配置参数中包括很多的性能参数(最大线程数、最大等待时间…),通过调整这些性能参数使ibatis达到高性能的运行,而mybatis没有这些性能参数,由mybatis自动调节。

3.<typeAliases>属性

可以将parameterType、resultType中指定的类型通过别名引用。MyBatis提供了很多的别名如下

这里我们采用自定义的别名,在SqlMapperConfig.xml中进行如下配置:

里面包括定义单个别名和批量别名定义(即一次性定义一个包下所有.java文件的别名)。

定义别名后这样我们在parameterType和resultType中使用时就不用再繁琐的指定类的全限定类名了,像下面这样使用即可

4.<typeHandlers>属性

类型处理器将java类型和jdbc类型进行映射,mybatis提供了很多类型处理器,一般情况下够用了。

5.<mapper>映射器属性

之前我们在配置文件中使用的<mapper>标签内容为:<mapper resource=“mapper/UserMapper.xml”/>,接下来我要讲的是另一种在配置文件中映射mapper动态代理的方法。在配置文件中这样配置<mapper class=“mapper.UserMapper”/>,这样的要求需要保证UserMapper.xml文件和UserMapper.java在同一个包下且.xml文件和.java文件名要同名。

同上方别名的配置,当包下出现多个Mapper.java和Mapper.xml时我们采用批量配置:<package name=“mapper”/>,代码如下:

MyBatis之优化MyBatis配置文件中的配置相关推荐

  1. mysql数据库系统配置文件_跟我学虚拟机系统平台相关技术及应用——在CentOS系统中的MySql数据库系统配置文件中进行配置定义...

    跟我学虚拟机系统平台相关技术及应用--在CentOS系统中的MySql数 据库系统配置文件中进行配置定义 1.1.1MySql5.6数据库系统的配置文件 1.不同作用范围内的系统配置文件 (1)/et ...

  2. java如何取到配置文件中值,从配置文件中获取配置信息的几种方法

    1.利用ResourceBundle类从properties文件中获取配置信息 创建配置文件并写入配置信息 image.png 使用以下代码可以轻松获取配置信息 package com.course. ...

  3. 【Spring Boot】从配置文件中读取配置参数

    前言 在生产环境中,经常会用到各种各样的参数,为了避免代码太过死板,一般将参数写入配置文件,然后需要用到参数的时候从配置文件中读取,下面总结出几种从配置文件中读取配置参数的方法. 环境搭建 现有配置文 ...

  4. java log4j 路径配置_log4j配置文件中路径配置一般有三种方法:

    log4j配置文件中路径配置一般有三种方法: (1)绝对路径法:直接配置为系统觉得路径: (2)相对路径法: log4j.appender.logfile.File=../logs/app.log,将 ...

  5. MyBatis学习总结(三)——优化MyBatis配置文件中的配置

    2019独角兽企业重金招聘Python工程师标准>>> 一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的con ...

  6. 优化MyBatis配置文件中的配置

    一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下: 1 <?xml version=" ...

  7. MyBatis学习总结_03_优化MyBatis配置文件中的配置

    一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下: 1 <?xml version=" ...

  8. mybatis 配置_MyBatis教程3:优化MyBatis配置文件中的配置

    点击上方"Java技术前线",选择"置顶或者星标" 与你一起成长 一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置 ...

  9. MyBatis学习总结(3)——优化MyBatis配置文件中的配置

    一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的conf.xml文件中,如下:

最新文章

  1. Nature指明大脑引流“废液”的确切路径
  2. Xilinx FPGA 芯片命名规则与查询方法
  3. V3S代码整合中遇到的一个奇怪问题
  4. js - 执行上下文和作用域以及闭包
  5. Linux常用工具小结:(2) Mysql的rpm安装和编译安装
  6. stm32数据手册boot_STM32问题集之BOOT0和BOOT1的作用
  7. 解决方案:PowerDesigner 16设置生成SQL column不含有collate chinese_prc_ci_as
  8. python中类里self_Python类中的self到底是干啥的
  9. springmvc.xml或spring.xml 能运行配置文件总是出现错误
  10. 从实例中学习grid布局
  11. 活动星投票网络文明公益广告网络评选微信的投票方式线上免费投票
  12. 【密码岛OJ】1753 马走日题解
  13. 计算机组成原理实验箱教程,计算机组成原理实验箱的技术参数和性能指标
  14. iOS基础——UI控件之UIAlertController、UINavigationController、Segue、SVProgressHUD
  15. 零基础学C语言 第3版 pdf
  16. sql中的date的使用
  17. 嵌入式系统中鲁棒性的理解
  18. R语言 switch结构
  19. 2018沈阳集训day1
  20. 软件需求和测试需求实用理论

热门文章

  1. java cmd停服务_java代码启动cmd执行命令来开启服务出现无法连接的问题
  2. jdk中java_怎样使用JavaJDK中Java?
  3. 公交查询系统 c语言,城市公交查询系统的设计任务书
  4. 月均数据_程序员月均薪多少,2019全国互联网行业程序员就业大数据报告
  5. php json 循环输出html,我要用js从json文件中取值,并输出的html页面,有个问题
  6. python怎么让输出结果为01_python从0到1--01.python中的输入/输出(基础篇)
  7. matlab 编译 java_MATLAB编译器运行时(MCR)编译器
  8. td之间的间距怎么改_论文的一级标题、二级标题格式怎么弄?
  9. php ci上传图片,CodeIgniter上传图片成功的全部过程分享
  10. 如何修改7 服务器配置,centos7修改服务器配置