Hibernate和iBatis、myBatis的区别?

发布网友 发布时间:2022-03-24 22:10

我来回答

6个回答

热心网友 时间:2022-03-24 23:39

首先Hiberante,iBatis,MyBatis都是对数据访问的封装,最终都是生成sql语句访问数据库。只不过Hibernate封装得比较全面,IBatis只是局部封装,懂Jdbc的程序员可以快速上手,而myBatis是近来流行的一种新的IBatis是对IBatis的升级,可以看着是升级版。追问那么Hibernate、iBatis封装的是什么?它们封装的东西有区别么??

热心网友 时间:2022-03-25 00:57

Hibernate完全实现了对JDBC的封装,可看成"全自动洗衣机".调用一个save()方法就能实现插入操作,完全不需要写sql.当然,它也支持类似sql的hql语句.ibatis需要自己写sql,但是sql写在配置文件(.xml)文件里面,可看成"半自动洗衣机".mybatis初级阶段可理解成就是ibatis.希望对你有帮助!

热心网友 时间:2022-03-25 02:32

mybatis是ibatis的升级版。
Hibernate和ibatis都是对操作数据库访问的封装,均可以动态的生成sql语句。
在Hibernate中只要操作具体的对象就可以实现对数据库的访问,完全脱离sql,易于快速开发。
ibatis比较灵活自由,对于熟悉jdbc的程序员来说可以很快的上手。

热心网友 时间:2022-03-25 04:23

hibernate 不用自己写sql语句,
ibatis要自己写sql语句,是半自动的
mybatis就是ibatis的升级版

热心网友 时间:2022-03-25 06:31

Hibernate、iBatis、myBatis都是Java的数据库DAO层框架。
Hibernate是基于ORM(对象关系映射),通过Java对象来指定由框架自动生成相应的SQL来访问数据库,通过框架来实现对象间的关系映射(特点就是能帮你自动将对象的Collection自动填充),因为自动生成SQL,所以能根据目标数据库来生成适应的SQL语句。但是因为是自动生成,无法使用SQL数据库的其他特性(视图、存储程序等)。而且有观点认为反而导致数据生成繁琐等问题。
iBatis、myBatis两者是同一样框架的不同版本,myBatis源自iBatis,是基于SQL Mapper,需要开发者自行编写SQL来定义数据访问方式,框架只实现数据获得后自动填充到Java对象中。相对Hibernate,由于能自己编写SQL,所以可以大量使用数据库特性或者控制数据,但要注意数据库特性差异而导致的移植问题(框架有提供目标数据库属性来给开发者自行调整SQL语句)。

热心网友 时间:2022-03-25 08:56

Hibernate完全实现了对JDBC的封装,可看成"全自动洗衣机".调用一个save()方法就能实现插入操作,完全不需要写sql.当然,它也支持类似sql的hql语句.ibatis需要自己写sql,但是sql写在配置文件(.xml)文件里面,可看成"半自动洗衣机".mybatis初级阶段可理解成就是ibatis.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com