MyBatis学习 概念

MyBatis是支持定制化SQL,存储过程以及高级映射的优秀持久性层框架。myBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。myBatis可以对配置和原生Map使用简单的XML或注解,将接口和Java的POJOs(Plain Old Java Objects,普通的Java对象)映射成数据库中的记录
MyBatis的功能架构:
**API接口层:**提供给外部使用的接口API,开发人员通过这些本地API来操纵数据库。接口层一接收到调用请求就会调用数据处理层 来完成具体的数据处理。
**数据处理层:**负责具体的SQL查找,SQL解析,SQL执行和执行结果映射处理等。它主要的目的是根据调用的请求完成一次数据库操 作。
**基础支撑层:**负责最基础的功能支撑,包括连接管理,事务管理,配置加载和缓存处理,这些都是共用的东西,将他们抽取出来 作为最基础的组件。为上层的数据处理层提供最基础的支撑。

优点:
1.简单易学:本身很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
2.灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响,sql写xml里,便于统一管理和优化,通过sql基本上可以实现我们不使用数据访问框架可以实现的所有功能,或许或许更多。
3.解除SQL与程序代码的耦合:通过提供DAL层,将业务逻辑和数据分离,使系统的设 计更清晰,更易维护,更易于单元测试。Sql和代码的分离,提高了可维护性。
4.提供映射标签,支持对象与数据库的orm字段关系映射
5提供对象关系映射标签,支持对象关系组建维护
6.提供XML标签,支持编写动态SQL。
缺点:
1.编写SQL语句时工作量很大,尤其是字段多、关联表多时,更是如此。
2.SQL语句依赖于数据库,导致数据库移植性差,不能更换数据库。
框架还是比较简陋, 功能尚有缺失,虽然简化了数据绑定代码,但是整个底3.层数据库查询实际还是要自己写的,工作量也比较大,而且不太容易适应快4.速数据库修改。●二级缓存机制不佳

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值