mybatis进阶

    mybatis是持久层框架,底层封装的是jdbc

    采用简单的xml配置+接口方法的形式实现对数据的增删改查操作,使用户只关注sql本身。

 

1.创建实体的mapper文件

    

2.创建mybatis的主配置文件

    

3.添加日志配置文件

    创建log4j.properties文件   放在src下

    

4.测试步骤

    

5.分析缺点

    

6.基于接口代理方式实现dao层

    a.约定

    

    b.测试

    

 

7.api

    

8.单条件查询方式

    a.resultMap

    

    b.resutType

    

    c.返回单条数据

    

  9.多条件查询

    a.参数随便按顺序命名

    

    b.dao层使用注解

    

    

    c.将多个参数放在bean中

    

    

10.模糊查询

    a.参数中拼接%%

    

    

    b.sql中拼接%%

    

    c.concat连接字符串函数

    

    d.sql拼接

    

11.#{}和${} 区别

    

 

12返回主键

    a.

    

    b.

    

13动态sql

    a.where 1=1

            

    b.where标签

    

14.update的set标签

    

15.foreach标签

    a.使用集合做参数

    必须是collection

    

 

   b.使用数组做参数

    必须是array

   c.实体中的集合或数组

    必须是实体中数组或集合的属性名称

16.sql代码块

    

17.resultMap代码块

    mapper的继承

    

 

18.表间 类间关系

    

 

 

 

a.一对一的mybatis映射

    方式一

    

    方式二

    

    b.一对多的mybatis映射

    

 

c.一对一 一对多总结

    

     

19.嵌套查询

    嵌套查询效率低,不推荐使用,(推荐多表查询)

    一对一情况

    

    

    

 

    一对多情况

    

 

     

 

20.mybatis配置加载策略(共2种)

    

 局部配置优先级高于全局配置

a.全局配置 有mybatis配置文件中

    

    b.局部配置

        

    c.导致延迟加载失效的配置

    

20.缓存机制

    

   a.一级缓存

        一级缓存是sqlSession级别的,默认开启不能关闭

     测试

        

    原理:调用同一个对象

    

    b.二级缓存

        二级缓存是映射器(mapper)级别的,默认开启,可以关闭

       测试:

        

    配置:

        

    

    返回实体类实现序列化  硬性规定

    

    原理:  第一次查询到789 赋值这个值为890,678  分别返回去

      

c.缓存失效

    

 

21.mybatis.xml配置文件讲解

    配置文件的,某些配置可以不写,但顺序不能变

a.properties  获取的是src下的路径

    

b.typeAliases 

方式一:不推荐

   

方式二:推荐

    

c.settings

    

 

   d.mappers

    方式一:不推荐

    

    方式二:不推荐

    

    方式三:推荐

    

e.envirpnments

    

 

     

 

****************************************总结一下*********************************************

    

 

22.mybatis分页

    分页函数 limit

    

    原理:

        

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值