SpringBoot(34) — MyBatis简介(1)

前言

SpringBoot开发中,之前已经讲过了数据持久层框架,包括Jdbc,Jpa等。Jdbc已经逐渐淡出开发舞台,JPA统治了一段时间,但是后来出现了更为优秀的数据持久层框架——MyBatis.那么久让我们来了解下MyBatis相关知识吧。

今天涉及的知识有:

  1. MyBatis简介
  2. MyBatis配置

一. MyBatis简介

网上对于MyBatis的解释很多,也很繁琐。这里我就不展开讲了。简单来说,MyBatis是一个优秀的数据持久层框架。做的事就是实现SQLPOJO的相互转化。

二. MyBatis 配置

MyBatis的配置主要分为两部分: 基础配置文件映射文件。 在MyBatis中可以使用注解来实现映射,由于功能和可读性限制,一般不采用注解配置SQL的方式。
MyBatis基于SqlSessionFactory构建的框架,其生命周期中只存在一个SqlSessionFactory对象,并且往往会使用单例模式。构建SqlSessionFactory是通过配置类来完成的。
MyBatis的配置涉及到以下方面:

  • properties(属性):属性文件一般采用Spring进行配置,而不是MyBatis
  • settings(设置):此配置将改变MyBatis底层行为,可配置映射规则,如自动映射或驼峰映射,执行器(Executor)类型,缓存内容等
  • typeAliases(类型别名): 因为使用类全限定名会比较长,所以MyBatis会对常用类提供默认别名,此外还允许我们通过typeAliases设置自定义别名
  • typeHandlers(类型处理器):主要用于处理sqlpojo的数据类型转换,MyBatis已内置很多自定义的typeHandler。一般来说,typeHandler的使用集中在枚举类型上。
  • objectFactory(对象工厂): MyBatis返回生成POJO是时调用的工厂类,一般我们使用MyBatis默认提供的工厂类DefaultObjectFactory
  • plugins(插件): 有时也称拦截器,通过动态代理和责任链模式完成,可以修改MyBatis底层的实现功能
  • environments(数据库环境):可配置数据库连接内容和事务,一般交由Spring托管
  • databaseIdProvider(数据库厂商标识): 允许MyBatis配置多种类型数据库,不常用
  • mappers(映射器): MyBatis最核心组件,提供sqlpojo映射关系。

ok,今天关于MyBatis的简单介绍就到这里了,谢谢大家。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章