美文网首页
关于mybatis,需要掌握的基础

关于mybatis,需要掌握的基础

作者: Java编程日记 | 来源:发表于2022-02-21 15:29 被阅读0次

    ❀ 总结 mybatis,需要掌握的基础如下:

    1、了解ORM 思想、ORM思想的作用、映射配置的两种方式

    2、MyBatis开发流程(基本使用)

    3、日志框架

    4、了解mybatis生命周期并抽取工具类MyBatisUtil、 MyBatisUtil工具类的作用

    5、MyBatis基础拓展(别名、属性、 结果集映射、 Mapper 接口、 多参数处理、myBatis插件)

    6、注解开发

    7、动态SQL

    8、对象关联的查询【额外的SQL、 内联映射】和懒加载

    9、缓存机制(一级缓存、二级缓存、第三方缓存技术redis、ehcache)

    10、代码生成器MyBatis Generator (MBG)、MBG的作用

    11、MyBatis 分页插件-PageHelper

    ❀关于mybatis,需要掌握的基础的详情如下:

    1、了解ORM 思想  (Object Relational Mapping)   对象映射关系

    ----为了解决面向对象与关系数据库存在的互相不匹配的问题。 [主要是: 对象的属性名和表的列名不匹配的问题 ]

    ■ ORM思想:

    面向对象概念----(映射配置)-----面向关系概念

    类 ---------------------------------表

    对象------------------------------表的行(记录)

    属性------------------------------表的列(字段)

    ✿映射配置Mapping:使用注解/xml

    2、MyBatis基本使用:

    -----开发流程-拷贝jar包,编写配置文件,然后进行测试

    ✿ MyBatis全局配置文件内容:

    ① 属性配置信息

    ② 全局配置信息(日志信息、)

    ③ 类型别名

    ④ 插件配置信息

    ⑤ 配置环境信息 【 事务+连接池 】

    ⑥ 关联映射文件

    ✿ MyBatis 映射文件内容:

    ① 编写增删改查sql ,把sql存放到insert| update| delete| select 元素中去

    ② 结果集映射 :解决表中的列和对象属性不匹配问题

    ③ 缓存配置

    ■ 测试myBatis执行增删改查操作:

    ① 加载配置文件

    ② 创建会话工厂对象 SqlSessionFactory 【好比连接池DataSource】

    ③ 建会话对象 SqlSession 【好比连接对象Connection】

    ④ 执行crud操作

    ⑤ 关闭资源

    3、日志框架使用:

    -----开发流程-拷贝jar包,编写日志配置文件,然后在mybatis的全局配置中设置日志信息

    4、了解myBatis的生命周期并抽取工具类MyBatisUtil

    -----抽取MyBatisUtil工具类[作用: 是用来创建会话对象Sqlsession]

    ■ 通过factory.openSession() 创建会话对象,默认是不提交事务的方式,可以手动提交

    5、MyBatis基础拓展(别名、属性、 结果集映射、 Mapper 接口、 多参数处理、myBatis插件)

    ■ 别名:在全局配置文件中,配置自定义别名

    ■ 属性:properties 属性配置 [动态引入]

    ■ 结果集映射:[ 解决表的列名和对象的属性名不匹配的问题 ]

    ■ Mapper 接口:相当DAO 层

    ■ 多参数处理:使用注解@Param实现处理多个参数

    ---myBatis默认情况下只能处理一个参数,解决查询多个参数的方法

    ■ myBatis插件:作用是编写配置文件有代码提示作用

    6、注解开发

    7、动态SQL

    if

    choose (when, otherwise)

    trim (where, set)

    foreach

    其他(bind,sql,include)

    8、对象关联的查询【额外的SQL、 内联映射】和懒加载(在全局配置进行设置)

    ■ 总结:多对一、一对多关系的单属性对象/集合属性对象,使用association或collection元素?使用额外SQL或内联查询?

    ● 单属性对象( assoication元素),多表查询操作会选择 内联查询

    ● 集合属性对象( collection元素),懒加载会选择 额外SQL处理

    ✿额外的SQL:会导致N+1 问题

    □额外的SQL[分步查询],一般需要进入另外一个页面展示更加详细的信息(懒加载)。

    □内联映射[多表查询],需要在列表中显示关联对象的数据,使用内联映射,否则会出现N+1问题。

    9、缓存机制(一级缓存、二级缓存、第三方缓存技术redis、ehcache)

    10、代码生成器MyBatis Generator (MBG)

    -----MBG [作用:可以根据表生成对应的 模型对象、 Mapper 接口、 Mapper 文件,甚至生成 QBC 风格 查询对象。]

    11、MyBatis 分页插件-PageHelper

    相关文章

      网友评论

          本文标题:关于mybatis,需要掌握的基础

          本文链接:https://www.haomeiwen.com/subject/uelilrtx.html