mybatis的详细开发步骤

1.开发mybatis的步骤 

2.缓存

        作用:缓存是为了存放我们的数据,减低我们的资源消耗准备的,缓存可以存放我们的实体类没有的,并且必须需要的数据,比如验证码

        1.一级缓存

         

         一级缓存是和我们的生命周期有着绝对的关系

一级缓存主要用于存储最常用的指令和数据,在程序执行过程中,当CPU需要访问内存中的数据时,首先会检查一级缓存中是否存在所需数据。如果数据已经存在于一级缓存中,CPU可以直接从一级缓存中获取数据,避免了对较慢的主存(内存)的访问,极大地提高了系统性能。

        简单的说就是可以保存我们的查询数据,把数据保存在缓存中,下一次执行就可以直接在缓存中获取,避免平凡的连接数据库,节约我们的系统资源

怎么使用一级缓存呢,其实一级缓存默认就是开启的我们就不需要手动修改了,但是缓存是有局限性的,就是说缓存是有条件的:

        1.必须查询的条件相同

        2.查询期间不能进行cud

        3.必须是同一个对象的执行

        SqlSessionFactory:作用于一次连接,必须使用使用同一个SqlSessionFactory对象

        SqlSession:作用于一次查询,必须使用使用同一个SqlSession对象

        2.二级缓存

                1.在mybatis-config.xml添加配置

<settings>
        <!-- 配置缓存 -->
        <setting name="cacheEnabled" value="true"/>
    </settings>
<cache eviction="FIFO" flushInterval="60000" size="512" readOnly="true" />

        就可以在我们的查询中引用就可以了

3.SQL映射的XML文件中的具体标签

                mapper – SQL映射文件的根元素,有一个namespace属性

                cache – 配置给定命名空间的缓存

                cache-ref – 从其他命名空间引用缓存配置

                resultMap – 用来描述数据库结果集和对象的对应关系

                sql – 可以重用的SQL块,也可以被其他语句引用

                insert – 映射插入语句

                update – 映射更新语句

                delete – 映射删除语句

                select – 映射查询语句

4.基于SQL映射文件的crud操作

         1.基于SQL映射文件的删除操作

        2.基于SQL映射文件的sql片段代码

        3.基于SQL映射文件的查询操作

        4.基于SQL映射文件的修改操作

        5.基于SQL映射文件的新增操作

 5.为SQL映射文件传递参数的方法

        1.parameterType:标识传进来的参数类型,也就是入参

                        普通类型:也就是java基础数据类型和String和实体类,

                                导入时切忌需要导入觉对路径,比如:java.lang.Integer

                        map集合:使用集合的方式传递参数

                        使用注解@Param:使用 @Param("参数名称") 数据类型 数据名

        2.resultType:通常用于查询语句,标识为返回类型,也就是出参

                        delete insert update 有默认返回受影响的行数,不予定义

                        普通类型:也就是java基础数据类型和String和实体类

                                        导入时切忌需要导入觉对路径,比如:java.lang.Integer

                        map集合:使用集合的方式传递参数

6.使用resultMap映射查询结果

        

        1.使用resultMap为出参的类型

        2.使用association和collection的区别

                相同点:association和collection都是用来做多表查询的

                不同点:association和collection使用的映射关系不同

                        association:用于一对一的映射关系

                                使用于:做查询是需要多表并且放回的多表数据为一条时

                        collection:用于一对多的映射关系

                                使用于:做查询是需要多表并且放回的多表数据为多条时,返回集合类型

        3.使用resultMap和resultType的区别

                相同点:本质上都是map,返回参数

                不同点:使用场景不同

                        resultMap:使用多表查询或者需要指定变量名称时使用

                        resultType:返回基础类型或map

        4.如何具体的使用属性

         5.如何使用映射自动映射

        在mybatis-config.xml中导入映射 就可以自动映射我们数据库查询的参数

settings>
        <!-- 自动自动映射-->
        <setting name="autoMappingBehavior" value="FULL"/>
    </settings>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值