Mybatis的特点及优点
作者:mrr 时间:2022-11-19 16:27:54
什么是mybatis,mybatis有什么特点,下面先给大家介绍下mybatis的概念及特点。
jdbc开发优缺点:
1)优点:简单易学,上手快,非常灵活构建SQL,效率高
2)缺点:代码繁琐,难以写出高质量的代码(例如:资源的释放,SQL注入安全性等)
开发者既要写业务逻辑,又要写对象的创建和销毁,必须管底层具体数据库的语法
(例如:分页)。
3)适合于超大批量数据的操作,速度快
hibernate开发优缺点:
1)优点:不用写SQL,完全以面向对象的方式设计和访问,不用管底层具体数据库的语法,(例如:分页)便于理解。
2)缺点:处理复杂业务时,灵活度差, 复杂的HQL难写难理解,例如多表查询的HQL语句
3)适合于中小批量数据的操作,速度慢
1)基于上述二种支持,我们需要在中间找到一个平衡点呢?结合它们的优点,摒弃它们的缺点,
这就是myBatis,现今myBatis被广泛的企业所采用。
2)MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。
3)iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAO)
4)jdbc/dbutils/springdao,hibernate/springorm,mybaits同属于ORM解决方案之一
好了,下面在给大家简单介绍下Mybaits的特点及优点,具体内容如下所示:
1.SQL语句和代码分离
便于统一管理和维护,不必再Java代码中调式SQL语句.但是当SQL语句出错时,控制台不会打印Log,
解决办法--引用log4j
2.用标签拼接SQL语句
用标签代替JAVA代码虽然写简单SQL语句时方便了许多,但是复杂的语句拼接难度大
3.结果集和JAVA对象自动映射
写过hibernate的都知道,hibernate连接数据库生成SQL语句的时候,会自动生成数据库实体类和其映射文件.在mybaits中,它帮我们做了这件事情.但是对数据库的字段要求较
高,实体类和配置文件需要手写.
4.即时加载
在一个页面同时显示大量数据时,hibernate的延时加载会创建大量的代理类,消耗资源.mybaits并不通过延时访问数据库.
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
聊聊Java的switch为什么不支持long
单独编译Android 源代码中的模块实现方法
老生常谈Scanner的基本用法
Springboot JPA 枚举Enum类型存入到数据库的操作
![](https://img.aspxhome.com/file/2023/4/60064_0s.jpg)
SpringCloud微服务架构实战之微服务治理功能的实现
![](https://img.aspxhome.com/file/2023/9/57609_0s.jpg)
基于Mybatis映射的一点心得(分享)
Java的线程与进程以及线程的四种创建方式
![](https://img.aspxhome.com/file/2023/5/79905_0s.png)
SpringBoot 如何从容器中获取对象
![](https://img.aspxhome.com/file/2023/5/75775_0s.png)
Java基础之数组模拟循环队列
![](https://img.aspxhome.com/file/2023/9/78929_0s.png)
Android平台基于Pull方式对XML文件解析与写入方法详解
java获取redis日志信息与动态监控信息的方法
![](https://img.aspxhome.com/file/2023/3/74763_0s.png)
ReentrantLock从源码解析Java多线程同步学习
![](https://img.aspxhome.com/file/2023/9/58679_0s.png)
Android Studio常用快捷键功能说明
Android Studio下Flutter环境搭建图文教程
![](https://img.aspxhome.com/file/2023/5/138895_0s.jpg)
SpringCloud如何创建一个服务提供者provider
![](https://img.aspxhome.com/file/2023/3/57813_0s.png)
Java实现软件运行时启动信息窗口的方法
Android中Listview点击item不变颜色及设置listselector 无效的解决方案
Unity实现倒计时组件
![](https://img.aspxhome.com/file/2023/7/100147_0s.gif)
Java通过exchange协议发送邮件
Java中File文件操作类的基础用法
![](https://img.aspxhome.com/file/2023/2/78922_0s.png)