Mybatis第三天动态Sql语句、XML中一对多、多对一、多对多该怎么写


今天内容很重要
在这里插入图片描述 在这里插入图片描述

把Mybatis里面的几个重要标签再解释一下

1、Mybatis中的配置类主要分为两大类,一类是主配置类,也仅有一个,在resource目录下面。一类是映射配置类,有多少个Dao接口,就有多少个映射配置类,在resource目录下面,包结构和Dao接口的包结构相同。在主配置类中用mapper标签来指明配置类的位置

2、映射配置类中mapper标签的namespace属性和select标签中的id属性是配合起来的,主要就是确定dao接口中方法的具体位置。

3、resultMap标签主要用于解决实体类属性和数据库列名不一致问题,其中id属性是resultMap的唯一标志,type属性是下面标签的返回值类型,相当于select标签中的resultType属性。
resultMap标签里面只有一个id子标签,其他都是result子标签,还有一个collection标签,这是集合属性的,用于一对多的。里面有个property属性,就是这个集合的名字,ofType属性就是这个集合里面元素的类型,集合里面元素的类型是role,role也是一个实体类。在这里插入图片描述
在这里插入图片描述

4、还有一个最重要的typeAlias标签和里面的package标签:在主配置文件里面设置,作用是让所有映射文件中的全限类名都可以用最后的类名,这样简单些,package标签还可以用在mapper标签里面,这样mapper标签里面映射文件的位置就不需要写classes属性和resource属性了,超级方便

Mybatis中使用unpooled配置连接池原理分析

使用pool连接池查询所有时的打印信息
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

Mybatis中使用pooled配置连接的原理分析

在这里插入图片描述在这里插入图片描述
池子分为 空闲池 和 活跃池
空闲池中就是还没用到的连接对象
活跃池中就是正在用的连接对象
在这里插入图片描述
f
在这里插入图片描述在这里插入图片描述

Mybatis中的事务原理和自动提交设置

在这里插入图片描述

Mybatis中的动态sql语句

if标签

在这里插入图片描述在这里插入图片描述

where标签

在这里插入图片描述
上图中老是写where 1=1 感觉太low 了,有没有办法避免呢? 肯定啊
就是where标签 加上一个where标签就可以不用写where 1=1了

在这里插入图片描述

foreach标签

在这里插入图片描述在这里插入图片描述

sql标签,用于抽取重复的语句

在这里插入图片描述在这里插入图片描述

第三章 Mybatis的多表关联查询

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

一对多查询

在这里插入图片描述

一对多查询,根据用户,查询所有的账户信息
在这里插入图片描述
所以要在用户类里面添加一个Account的List集合
在这里插入图片描述在这里插入图片描述

多对多

在这里插入图片描述在这里插入图片描述

用户实体类

在这里插入图片描述

角色实体类

角色的单表操作

在这里插入图片描述

测试类中
在这里插入图片描述

在这里插入图片描述

获取角色下的所有用户信息

在这里插入图片描述

多个表之间的关联

在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

从一个用户到多个角色

在这里插入图片描述在这里插入图片描述
进行测试
在这里插入图片描述在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42350785/article/details/106960177