MyBatis_03(核心配置文件解析)
核心配置的文件的"详解" -->(优化,核心配置文件)
“核心配置文件的前言”:
核心配置文件中的标签必须按照固定的顺序 ---> (“有的标签可以不写,但顺序一定不能乱”):
properties、
settings、
typeAliases、
typeHandlers、
objectFactory、
objectWrapperFactory、
reflectorFactory、
plugins、
environments、
databaseIdProvider、
mappers
1- 优化点:连接 "数据库" 的信息,用"jdbc.properties" 来映射进去。(1)
jdbc.properties "文件路径"
jdbc.properties文件
// "jdbc.properties文件'"
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/learn_mybatis?serverTimezone=UTC
jdbc.username=root
jdbc.password=00000
2-优化点:类型别名(2)
在resultType:默认的映射关系("表的字段"和"实体类的属性"一致)的情况-->使用
为什么使用“类型别名”
1-因为:
后期 "导入实体类的包" ,因为包名太长,而需要 "类型别名" 来简化
2-使用:
“核心配置” 文件用"类型别名"来简化后,在"映射文件"中可以用。
以“包”为单位,设置改包下所有的类型都拥有默认的别名,即类名且不区分大小写
1-核心配置的内容
2-映射文件的内容
因为 “核心配置文件” 以 “pojo包” 为单位,所以 “拥有默认的别名,即类名且不区分大小写”
比如我现在pojo包,下面有“User实体类”
核心配置文件已经配置了 “<typeAlias type="com.atguigu.pojo"></typeAlias>”
所以,我在“映射文件写User、user都可以。
而且,如果还有一个 “Studnt实体类”,我在“核心配置”文件也不需要修改,而且还能再在”映射文件“中直接写- Student、student
经过“测试”成功,可以使用。
3-优化点:mapper,优化导入“映射文件”(3)
为什么“优化” - “核配置文件”的 <mappers>
// <mappers>的作用:用来导入“映射文件”
因为:
如果不优化为“以包为单位”,那一个“实体类的映射文件”就需要 -写一条 <mappers>,非常麻烦
所以:
以包为单位,将包下所有的映射文件引入核心配置文件
注意:
1. 此方式必须保证 "mapper接口" 和 "mapper映射文件" 必须在相同的包下
2. "mapper接口" 要和 "mapper映射文件" 的名字一致
细节点:
在resources下面,新建“包结构”,需要用/线。
已我的这个为例子:com/atguigu/mapper ,才可以新建“包结构”
3.1-在“核心文件”使用:
<!-- 引入MyBatis的映射文件 -->
<mappers>
<!-- <mapper resource="Mappers.UserMapper.xml"/> -->
<!--
以包为单位,将包下所有的映射文件引入核心配置文件
注意:
1. 此方式必须保证 "mapper接口" 和 "mapper映射文件" 必须在相同的包下
2. "mapper接口" 要和 "mapper映射文件" 的名字一致
-->
<package name="com.atguigu.mapper"/>
</mappers>
MyBatis_03(核心配置文件解析)的更多相关文章
- Mybatis配置解析(核心配置文件)
4.配置解析 4.1.核心配置文件 Mybatis的配置文件包含了会深深影响mybatis行为的设置和属性信息 mybatis-config.xml properties(属性)重点 settings ...
- Nginx核心配置文件常用参数详解
Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/ ...
- MyBatis基础入门《五》核心配置文件
MyBatis基础入门<五>核心配置文件 描述: 在前面的章节中,简单的学习使用了一下mybatis,对于配置文件没有过多详细说明. 这里先描述项目中的一个核心配置文件:mybatis-c ...
- SpringMVC深度探险(四) —— SpringMVC核心配置文件详解
在上一篇文章中,我们从DispatcherServlet谈起,最终为读者详细分析了SpringMVC的初始化主线的全部过程.整个初始化主线的研究,其实始终围绕着DispatcherServlet.We ...
- ibatis源码学习2_初始化和配置文件解析
问题在详细介绍ibatis初始化过程之前,让我们先来思考几个问题. 1. ibatis初始化的目标是什么?上文中提到过,ibatis初始化的核心目标是构造SqlMapClientImpl对象,主要是其 ...
- Centos7 nginx的目录结构与nginx主配置文件解析
一.nginx的目录结构 [root@node nginx_116]# ls client_body_temp conf fastcgi_temp html logs proxy_temp ...
- mybatis源码配置文件解析之一:解析properties标签
mybatis作为日常开发的常用ORM框架,在开发中起着很重要的作用,了解其源码对日常的开发有很大的帮助.源码版本为:3-3.4.x,可执行到github进行下载. 从这篇文章开始逐一分析mybati ...
- mybatis源码配置文件解析之二:解析settings标签
在前边的博客中分析了mybatis解析properties标签,<mybatis源码配置文件解析之一:解析properties标签>.下面来看解析settings标签的过程. 一.概述 在 ...
- mybatis源码配置文件解析之三:解析typeAliases标签
在前边的博客在分析了mybatis解析settings标签,<mybatis源码配置文件解析之二:解析settings标签>.下面来看解析typeAliases标签的过程. 一.概述 在m ...
- mybatis源码配置文件解析之五:解析mappers标签
在上篇博客中分析了plugins标签,<mybatis源码配置文件解析之四:解析plugins标签>,了解了其使用方式及背后的原理.现在来分析<mappers>标签. 一.概述 ...
随机推荐
- E - 树状数组 1【GDUT_22级寒假训练专题五】
E - 树状数组 1 原题链接 题意 已知一个数列,你需要进行下面两种操作: 将某一个数加上 \(x\) 求出某区间每一个数的和 lowbit函数 定义一个函数\(f=lowbit(x)\),这个函数 ...
- 2.17 win32 按钮事件的处理
按钮的本质就是窗口 点击查看代码 void CreateButton(HWND hwnd) { HWND hwndPushButton; HWND hwndCheckBox; HWND hwndRad ...
- WPF Xaml标签的一些特殊符号 如何输入
小于号 < 输入 < 注意有分号 大于号 > 输入 > 符号 & 输入 & 引号 " 输入 "
- KB 与 KiB
字节(Byte)是计算机中存储数据的基本单位,每 8 位比特(bit)组成一个字节.各种信息在计算机中存储.处理至少需要一个字节.例如,一个 ASCII 码用一个字节表示,一个汉字用两个字节表示. 根 ...
- 如何调用别人的接口(包含get请求post请求)
对于如何调用第三方接口还是有些模糊,所以记录一下,上代码 package com.zhang.miaodou; import java.io.BufferedReader; import java.i ...
- Xilinx URAM使用说明 UG573
UltraRAM Resources UltraRAM Summary UltraRAM 是单时钟.双端口.同步存储器,可用于 UltraScale+ 器件.由于 UltraRAM 与柱状(colum ...
- Solidity8.0-01
对应崔棉大师 1-25课程https://www.bilibili.com/video/BV1yS4y1N7yu/?spm_id_from=333.788&vd_source=c81b130b ...
- javaweb同一个项目打包两次放在同一个tomcat下
web.xml中配置: <context-param> <param-name>webAppRootKey</param-name> <param-value ...
- 如何利用fooview实现钉钉自动打卡
我们平常遇到需要钉钉打卡的那种公司,经常要抢时间不敢晚起,有的公司还要扣钱,这样就很难受.本文教你一种行之有效的办法实现钉钉自动打卡. 有些人可能会用什么虚拟定位之类的工具,但是这种是很容易被钉钉发现 ...
- 代码随想录训练营day 1 |704 二分查找 27移除算法
LeetCode 704.二分查找(C++) 题目链接 704.二分查找 题目描述:给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 ...