作者:手机用户2602918063 | 来源:互联网 | 2023-10-12 13:12
MyBatis3简介一、什么是MyBatis MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefoundation迁移到
MyBatis3简介
一、什么是MyBatis
MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github。iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。
在以前我们的工作流程是如下图所示
二、MyBatis与Hibernate区别
两个都是持久层框架,操作数据库,但是两者还是有区别的。
hibernate:
- 它是一个标准的orm框架,比较重量级,学习成本高。
- 优点:高度封装,使用起来不用写sql,开发的时候,会减低开发周期。
- 缺点:sql语句无法优化 。
- 应用场景:oa(办公自动化系统), erp(企业的流程系统)等,还有一些政府项目。
- 总的来说:Hibernate像是一个全自动的框架,传入一个Javabean然后就自己能传回一个DbRecords,sql语句都给我们编写好了,在用于量不大,并发量小的时候使用.。
mybatis :
- 它不是一个orm框架, 它是对jdbc的轻量级封装, 学习成本低,比较简单。
- 优点:学习成本低, sql语句可以优化, 执行效率高,速度快。
- 缺点:编码量较大,会拖慢开发周期。
- 应用场景: 互联网项目,比如电商,P2p等。
- 总的来说:像是一个半自动的框架,可以自己设计和编写SQL语句,Sql与java编码分离;sql由开发人员控制,是用户量较大,并发高的项目。