ssm-mybatis简介

摘自—JavaEE 互联网轻量级框架整合开发和Redis实现-----杨开振
一.mybatis核心组件
SqlSessionFactoryBuilder(构造器):根据配置或代码生成SqlSessionFactory,采用分布构建的Builder模式
SqlSessionFactory(工厂接口):依靠它生成SqlSession,使用工厂模式。使用单例模式。
SqlSession(会话):既可以发送sql执行返回结果,也可以获取mapper的接口。
SqlMapper(映射器):由java接口和xml文件或注解构成。

二.mybatis配置
properties属性可以给系统运行配置一些参数,可以放在xml文件或者properties文件中:
有三种方式传递:property子元素,properties文件,程序代码传递(数据库用户密码加解密)
setting是mybatis中最复杂的配置,深刻影响mybatis底层运行。大部分情况不用修改,常用的有自动映射,驼峰命名映射,级联规则,是否启用缓存,执行器类型。
typeAliases别名:类的全限定名的缩写。(系统自定义别名,用户自定义别名)
typeHandler类型转换器:javaType—typeHandler—jdbcType(枚举类型)
ObjectFactory
插件
environment
databaseIdProvider(可以标识不同的sql语句)

三.映射器
select
传递多个参数:使用map接口,通过java bean,混合使用
使用resultmap映射结果集
分页参数RowBounds
主键回填
sql元素
resultmap元素
使用map存储结果集
使用pojo存储结果集
mybatis中的级联:association(一对一), collection(一对多)没有多对多
N+1延迟加载;鉴别器和实体在一个层级,其他关联的对象在一个层级(lazyLoadingEnabled, aggressiveLazyLoading)
缓存 默认开启一级缓存(sqlsession级别,单个sqlsession使用)二级缓存(sqlsessionfactory级别,多个sqlsession使用)

四.动态sql
if
choose when otherwise元素
trim where set 元素
foreach元素
test属性判断字符串
bind元素

猜你喜欢

转载自blog.csdn.net/weixin_42306440/article/details/89766410