初识MyBatis

来源:互联网 发布:mac卸载itools 编辑:程序博客网 时间:2024/06/11 02:19

MyBatis是支持定制化SQL、存储过程以及高级映射的优秀持久层框架。MyBatis

避免了几乎所有的jdbc代码和手动设置参数以及获取结果集。MyBatis可以对配置和

原生Map使用简单的XML或注解,将接口和Java的Pojoscplain old Objects,普通的

Java对象映射成数据库中的记录。


MyBatis的功能架构分为:

API接口层:提供给外部使用的接口API,开发人员通过这些本地API来操作

数据库,接口层一接到调用请求就会调用数据处理层来完成具体的数据处理;

数据处理层:负责具体SQL查找、SQL解析、SQL执行和执行结果映射等,它

主要的目的是根据调用的请求完成一次数据库的操作。

基础支撑层:负责最基础的功能支撑,包括连接管理、事务管理、配置加载

和缓存处理等,这些都是公用的东西,将它们抽取出来做最基础的组件,为上层的数

据处理提供最基础的支撑。

MyBatis优点:简单易学,本身就很小且简单,没有任何第三方依赖,最简单

安装只要两个*jar*文件外加配置几个SQL映射文件易于学习、易于使用,通过文档和

源代码可以比较完全的掌握它的设计思路和实现; 灵活、解除SQL与程序代码的耦合;

提供映射标签,支持对象与数据库的ORM字段关系映射。 提供对象关系映射标签,支

持编写动态SQL。

同时MyBatis的缺点是:编写SQL语句时工作量很大,尤其字段多关联表多时

更是如此,SQL语句依赖数据库,导致数据库的移植性差,不能更换数据库,框架还

比较简陋,功能尚有缺失,虽然简化了数据绑定代码,但是整个框架底层数据库查询

实际还是要自己写的,工作量也比较大,而且不太容易适应快数据修改,二级缓存机制不佳。