mybais的简介
来源:互联网 发布:brew mysql 编辑:程序博客网 时间:2024/06/11 09:28
MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(Plan Old Java Objects,普通的Java对象)映射成数据库中的记录.
MyBatis的优缺点
Mybatis也是一种ORM框架,所以,肯定也有两类配置文件。
第一类,用来配置MyBatis环境,比如数据库连接等。mybatis-config.xml
第二类,用来配置对象到数据库表的映射。例如RoleMapper.xml.
Mybatis与Hibernate的对比:第一类,用来配置MyBatis环境,比如数据库连接等。mybatis-config.xml
第二类,用来配置对象到数据库表的映射。例如RoleMapper.xml.
序号
Mybatis
hibernate
1.
iBatis SSI 2002年诞生 Cliton begin
2001年 Given King
2.
2010年5月由apache投奔google
Jboss,apache
3.
基于SQL 面向结果集
基于面向对象 HQL
4.
效率高
效率低
5.
SqlSessionFactory
SessionFactory
6.
SqlSession
Session
7.
sqlMapConfig.xml
Hibernate.cfg.xml
8.
userMapper.xml
映射文件 user.hbm.xml
优点:
1、简单易学
mybatis本身就很小且简单。没有任何第三方依赖,最简单安装只要两个jar文件+配置几个sql映射文件易于学习,易于使用,通过文档和源代码,可以比较完全的掌握它的设计思路和实现。
2、灵活
mybatis不会对应用程序或者数据库的现有设计强加任何影响。 sql写在xml里,便于统一管理和优化。通过sql基本上可以实现我们不使用数据访问框架可以实现的所有功能,或许更多。
3、解除sql与程序代码的耦合
通过提供DAL层,将业务逻辑和数据访问逻辑分离,使系统的设计更清晰,更易维护,更易单元测试。sql和代码的分离,提高了可维护性。
4、提供映射标签,支持对象与数据库的orm字段关系映射
5、提供对象关系映射标签,支持对象关系组建维护
6、提供xml标签,支持编写动态sql。
缺点:
1、编写SQL语句时工作量很大,尤其是字段多、关联表多时,更是如此。
2、SQL语句依赖于数据库,导致数据库移植性差,不能更换数据库。 3、框架还是比较简陋,功能尚有缺失,虽然简化了数据绑定代码,但是整个底层数据库查询实际还是要自己写的,工作量也比较大,而且不太容易适应快速数据库修改。
4、二级缓存机制不佳
总结
mybatis的优点同样是mybatis的缺点,正因为mybatis使用简单,数据的可靠性、完整性的瓶颈便更多依赖于程序员对sql的使用水平上了。sql写在xml里,虽然方便了修改、优化和统一浏览,但可读性很低,调试也非常困难,也非常受限。
mybatis没有hibernate那么强大,但是mybatis最大的优点就是简单小巧易于上手,方便浏览修改sql语句。
阅读全文
0 0
- mybais的简介
- mybais的0值漏洞
- mybais测试
- springMVC+mybais整合ehcache
- Mybais之MapperProxy
- spring+sprinmvc+mybatis基本整合(二)--基于spring注解mybais非注解非Mapper接口方式
- Xoops 简介 (1) -- 简介的简介
- do not repeat yourself:使用反射配合mybais mapper,300行代码搞定逻辑相似对象增删查改
- Samba的简介
- @page的简介
- HTTP 协议的简介
- 手机IMEI的简介
- 我的求职简介
- 代数的简介
- spring 的OpenSessionInViewFilter简介
- DBMS_SQL的使用简介
- JBPM的应用简介
- C#的多线程简介
- 第八周LeetCode算法题两道
- 如何php开启CURL支持
- dede学习-增加文章内容
- ajax提交
- postgreSql 关键字和自定义的字段重名
- mybais的简介
- C++中memset作用
- 如何删除文件中带有某个特定单词或者特定标识的行
- [Java]Socket和ServerSocket学习笔记
- tomcat跟mysql(解压版安装)
- mariadb数据库管理系统
- 利用spring打印mybatis执行的sql
- 根据Powerdesigner 创建数据库中的表
- 【AGC006C】Rabbit Exercise