mybatis初学

来源:互联网 发布:javascript入门适合看 编辑:程序博客网 时间:2024/05/17 22:46

持久层:数据源设计模式。

数据源设计模式:数据的来源(驱动、地址、用户名、密码)
1、表数据入口,至少有一个实例超过表中任何数据的入口。session:维护对象和表之间的状态。
2、行数据入口,实例里面有对行数据操作的入口。
3、活动记录,一一对应
4、映射,对象与表的对应


java对象的3种形态:
1、瞬时状态:new创,但还没有被session所管理,不会被持久化到数据库中,也不会被赋予持久化标识。
2、持久状态:被session所管理的,会同步到数据库。
3、游离状态:曾经被session所管理过,现在session被干掉了。

hibenate与mybatis的区别
hibenate全自动,mybatis半自动
mybatis需要自己定义映射(结果集的映射)
hibenate不支持批量操作?


代理模式

一级缓存:默认是一级缓存
二级缓存:在一级缓存失效的时候启用

mybatis组成:
核心对象:SqlSessionFactory SqlSession。
配置文件:mybatis.cfg.xml相当于hibenate的hibenate.cfg.xml。
多个配置文件:user.xml相当于hibenate的映射类文件,在mybatis除了负责映射外,还要负责crud的编写。
两种都支持注解配置(不推荐单独使用注解,推荐注解+配置)。


延迟加载:
即时加载:

持久层框架查询顺序:
1、找一级缓存
2、找二级缓存
3、不去查数据库而是返回一个代理对象(延迟加载)/直接查询数据库,如果设置了缓存,还会将数据放到缓存中去(即时加载)。


类型别名在sql映射文件的时候使用
一个环境对应一个数据库
<environment>事物管理

 

 

 

 

 

 

 

 

 


 

0 0
原创粉丝点击