mybatis配置文件解析

  • mybatis核心配置文件`mybatis-config.xml文件.
  • mybatis的配置文件包含了会深深影响mybatis行为的设置和属性信息.
  • 能配置的内容:
configuration(配置)properties(属性)settings(设置)typeAliases(类型别名)typeHandlers(类型处理器)objectFactory(对象工厂)plugins(插件)environments(环境配置)environment(环境变量)transactionManager(事务管理器)dataSource(数据源)databaseIdProvider(数据库厂商标识)mappers(映射器)
<!-- 注意元素节点的顺序!顺序不对会报错 -->

environments元素

配置mybatis的运行环境.

<environments default="development"><environment id="development"><transactionManager type="JDBC"><property name="..." value="..."/></transactionManager><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>

mappers元素
映射器:定义映射sql语句文件.

<!-- 使用相对于类路径的资源引用 -->
<mappers><mapper resource="org/mybatis/builder/PostMapper.xml"/>
</mappers>
<!-- 使用完全限定资源定位符(URL) -->
<mappers><mapper url="file:///var/mappers/AuthorMapper.xml"/>
</mappers>
<!--
使用映射器接口实现类的完全限定类名
需要配置文件名称和接口名称一致,并且位于同一目录下
-->
<mappers><mapper class="org.mybatis.builder.AuthorMapper"/>
</mappers>
<!--
将包内的映射器接口实现全部注册为映射器
但是需要配置文件名称和接口名称一致,并且位于同一目录下
-->
<mappers><package name="org.mybatis.builder"/>
</mappers>

mapper文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.kuang.mapper.UserMapper">
</mapper>

namespace中文意思:命名空间,作用如下:
namespace和子元素的id联合保证唯一 , 区别不同的mapper
绑定DAO接口
namespace的命名必须跟某个接口同名
接口中的方法与映射文件中sql语句id应该一一对应
namespace命名规则 : 包名+类名

properties优化

数据库的这些属都是可以外部配置可以动态替换的.既可以在典型的java属性文件中配置,也可以在通过properties元素子元素来传递

在资源目录下建一个文件db.properties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=utf8
username=root
password=123456

将文件导入配置文件

<configuration><!--导入properties文件--><properties resource="db.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><mappers><mapper resource="mapper/UserMapper.xml"/></mappers>
</configuration>

mybatis配置文件解析相关推荐

  1. mybatis配置文件解析错误解决方法

    2019独角兽企业重金招聘Python工程师标准>>> 转:mybatis写mapper文件注意事项 mybatis3 mapper cdata mybatis3 null xml中 ...

  2. mybatis主配置文件解析

    所谓mybatis主配置文件就是上一篇文章中提到的mybatis-config.xml,SqlSessionFactoryBuilder 通过解析这个配置文件得到代表数据库的SqlSessionFac ...

  3. MyBatis 源码分析 - 配置文件解析过程

    文章目录 * 本文速览 1.简介 2.配置文件解析过程分析 2.1 配置文件解析入口 2.2 解析 properties 配置 2.3 解析 settings 配置 2.3.1 settings 节点 ...

  4. mybatis3 配置文件解析

    mybatis3 配置文件解析 2013-05-08 19:43 34388人阅读 评论(0) 收藏 举报 分类: mybatis3(19) 目录(?)[+] 配置文件的基本结构 configurat ...

  5. 什么是Mybatis配置解析?(源码+图文)

    什么是Mybatis配置解析?(源码+图文) 1. 核心配置文件 mybatis-config.xml configuration(配置)properties(属性)settings(设置)typeA ...

  6. Java-Mybatis(二): Mybatis配置解析、resultMap结果集映射、日志、分页、注解开发、Mybatis执行流程分析

    Java-Mybatis-02 学习视频:B站 狂神说Java – https://www.bilibili.com/video/BV1NE411Q7Nx 学习资料:mybatis 参考文档 – ht ...

  7. Mybatis系列全解(四):全网最全!Mybatis配置文件XML全貌详解

    封面:洛小汐 作者:潘潘 做大事和做小事的难度是一样的.两者都会消耗你的时间和精力,所以如果决心做事,就要做大事,要确保你的梦想值得追求,未来的收获可以配得上你的努力. 前言 上一篇文章 <My ...

  8. 【Springboot+mybatis】 解析Excel并批量导入到数据库

    [Springboot+mybatis] 解析Excel并批量导入到数据库 置顶 2018年01月16日 20:05:52 冉野丶 阅读数:4060 标签: excel导入数据库 文件上传 excel ...

  9. 【c语言】C语言配置文件解析库——iniparser

    转载自:http://blog.csdn.net/u011192270/article/details/49339071 C语言配置文件解析库--iniparser 前言:在对项目的优化时,发现Lin ...

最新文章

  1. mac安装brew和zsh
  2. .NET Core系列 : 2 、project.json 这葫芦里卖的什么药
  3. STM32F2xx DMA Controllers
  4. Java自动化邮件中发送图表(二)之JFreeChart
  5. *【CodeForces - 791B】Bear and Friendship Condition (图论,判断完全图,dfs乱搞或带权并查集)
  6. [Java] 蓝桥杯ADV-184 算法提高 素数求和
  7. APP安全防护基本方法(混淆/签名验证/反调试)
  8. vfp 生成html,利用VFP脚本开发动态Web系统
  9. Hibernate各个版本的下载地址
  10. sap成本流怎么看_SAP标准成本核算体系
  11. html版权信息c怎么写,网页设计添加版权的语句肿么写
  12. 火山pc实现找图找色模块
  13. 电驴emule使用教程
  14. Tomcat:The server encountered an internal error () that prevented it from fulfilling this request.
  15. 关于java中JDBC读取字段属性原理
  16. STM32F7+STM32CubeMX5.21+SD+FATFS
  17. 电脑操作精典秘籍60式【实用】
  18. Echarts 图表一些细节设置 lenged 双Y轴等
  19. HIR夏季挑战赛作品紧急优化
  20. 领导的沉默,背后到底隐藏着什么?

热门文章

  1. 2022-2028年中国氧化铟锡薄膜行业市场深度分析及前瞻研究报告
  2. 通过python利用哈希值实现比较两个文件的一致性
  3. scheduled sampling_seq2seq
  4. RuntimeError: Expected object of device type cuda but got device type cpu for argument pytorch数据位置
  5. 一阶逻辑与二阶逻辑的区别一元谓词多元谓词
  6. MLIR Python绑定
  7. NVIDIA GPU的神经网络自动调度
  8. 基本数据类型转换规则
  9. (14)某工业生产部门根据国家计划的安排, 拟将某种高效率的5台机器,分配给所属的3个工厂A,B,C,各工厂在获得这种机器后,可以为国家盈利的情况如表4-10所示。
  10. android ScrollView/NestedScrollView 添加可拖动的滚动条