MyBatis---- SqlMapConfig.xml配置文件

上一篇👉:MyBatis----Mybatis传统 DAO 层开发



🚴大家好!我是近视的脚踏实地,后边这系列主要是记录自己MyBatis的学习笔记,这篇文章主要来学习mybatis的一些配置开发,这部分了解即可
     唯有行动  才能解除你所有的不安

1、配置内容

SqlMapConfig.xml 中配置的内容和顺序:

-properties(属性)
              --property
-settings(全局配置参数)
              --setting
-typeAliases(类型别名)
              --typeAliase
              --package
-typeHandlers(类型处理器)
-objectFactory(对象工厂)
-plugins(插件)
-environments(环境集合属性对象)
              environment(环境子属性对象)
                            —transactionManager(事务管理)
                            —dataSource(数据源)
-mappers(映射器)
              --mapper
              --package

2、properties(属性)

那么之前我们可以在SqlMapConfig.xml中进行properties的一个配置,如下👇:
在这里插入图片描述
然后运行一个查询所有的方法看看配置是否可以使用👇:
在这里插入图片描述
那么通过运行结果可以看到是成功了,那么这个写法是被支持的,但是这有点吃饱了撑着的感觉,就是本来下面写的好好的,那为什么又要多写一份搬到上面去。

那么它其实是这样的,我们可以配置properties的内容放到外部的配置文件中,比如在resources目录下创建一个jdbc
在这里插入图片描述

然后把配置信息写在这个配置文件中

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/mybatis
jdbc.username=root
jdbc.password=root

接着就可以在SqlMapConfig.xml配置文件中引入jdbcConfig.properties配置文件
在这里插入图片描述
然后运行一个查询所有的方法看看配置是否可以使用👇:
在这里插入图片描述
那么可以发现,它现在是用不了的,因为在jdbcConfig.properties配置文件中的key发生了变化,多了一个jdbc的前缀,所以为了保持一致,SqlMapConfig.xml配置文件中的key也应该保持一致👇:
在这里插入图片描述
那么改好后重新运行就没问题了👇:
在这里插入图片描述

那么resources也是经常用到的属性,那其实还要一个url属性也比较常用,在mapper标签中也有这个属性,那么url属性是要求按照Url的写法来写地址。

那么URL的全称就是Uniform Resource Locator 统一资源定位符,他是可以唯一标识一个资源的位置

它的写法:协议 主机 端口 URL 比如:http://localhost:8080/mystroe/CategoryServlet

URI:Uniform Resource Identifier 统一资源标识符

比如上边的/mystroe/CategoryServlet,它是可以在 web 应用中唯一定位一个资源的路径

那么这里就可以到idea的工作间,把那个jdbcConfig.properties拖到一个浏览器中,就可以拿到它的url,这时候前边是有file的,说明他是遵循一个file协议的,当然可以直接到盘符下复制上方的地址,然后放到SqlMapConfig.xml配置文件中的url属性中
在这里插入图片描述

然后去执行测试类中的查询所有的方法,看看这样配置是否可以成功
在这里插入图片描述
那么运行结果发现是没有任何问题的,那么这个mapper上的url属性也是这么使用的,但是要按照url的标准去写

3、typeAliases(类型别名)

在这里插入图片描述

那么接着来学习typeAliases标签,这个标签的作用也很简单,就之前提到,这里的parameterType中的类型,这里可以写int,也可以写INT,可以写INTEGER,也可以写integer,也可以写java.lang.integer,包括那个string,都可以完成功能,而如果是引用类型比如说User,就不行,必须写它的全类名,那么这里边的原因也很简单,就是因为它使用了别名,它把我们一些常用的数据类型,比如基本类型都注册进去,而如果我们想用的话,我们也可以自己配置别名的👇:
在这里插入图片描述
那么配置好后,当需要写那个全限定类名,我们就可以直接替换成user,或者USER,都不区分大小写👇:
在这里插入图片描述
那么继续拿查询所有的方法来进行测试👇:
在这里插入图片描述
可以看到同样可以完成功能,也就是说,只要你配置了,就能用,但是当你过多的时候吗,用typeAliase标签来配就很麻烦,于是它就给我们提供了一个叫package这个标签
在这里插入图片描述

那么继续拿查询所有的方法来进行测试👇:
在这里插入图片描述

那么同理在mapper标签中也可以使用package标签进行配置👇:
在这里插入图片描述

那么继续拿查询所有的方法来进行测试👇:
在这里插入图片描述
那么这两个标签在实际开发中对我们的作用还是挺大的,他能节省我们很多的代码

4、mappers(映射器)

<mapper resource=" " /> :
使用相对于类路径的资源.
如:<mapper resource=“monster/zf/dao/UserDao.xml” />

<mapper class=" " /> :
使用 mapper 接口类路径
如:<mapper class=“monster/zf/dao/UserDao.xml” />
注意:此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中。

注册指定包下的所有 mapper 接口
如:<package name=“monster.zf.mybatis.mapper”/>
注意:此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中。


下一篇👉MyBatis---- Mybatis 连接池与事务深入

本篇博客到这就完啦,非常感谢您的阅读🙏,那么下一篇将会学习Mybatis 连接池和事务,如果对您有帮助,可以帮忙点个赞或者来波关注鼓励一下喔😬

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值