Hibernate与JDBC、EJB、JDO的比较
2008-08-22 23:00
197 查看
常用的数据库操作包括:JDBC、EJB、JDO以及Hibernate。它的各有优缺点:
(1) JDBC:多数Java开发人员是用JDBC来和数据库进行通信,它可以通过DAO模式进行改善和提高。但这种方式在大型应用程序中不容易操作使用,且维护起来相当困难。
(2) EJB:EJB通常是在数据持久技术上的第二个选择,它是通过entitybeans来对数据进行持久化。首先就需要购买一个价位合理的EJB容器一J2EE应用服务器,也可以采用开源项目的免费EJB容器,比如JBOSS。但是很多商业EJB容器的性能和技术支持不太好,在EJB中实现JDBC也比较复杂。
(3) JDO:JDO的出现似乎有了一些改观,但是,JDO没有一个好的开源免费实现。好的产品部是商业产品,并且在国内没有销售和技术支持。JDO也不是一个轻量级封装.它建立的持久层框架,很不完善。再加上JDO的标准还很不完善以及严重的产品分裂问题,使得很多操作方式很是烦琐。
(4) Hibernate:Hibernate这种持久框架在某些方面有很大的不同,它不需要任何容器,提供简单易用的API,也解决了JDO的很多缺陷。作为一个良好的ORM ,它有如下特点:
透明地提供对象与关系数据库的映射,以统一的接口方式支持多种数据库。
缓存机制,复杂的缓存机制和锁定策略,使针对数据库操作大大减少。
开源免费的License,可以在需要的时候研究源代码,改写源代码,进行功能的定制。
轻量级封装,避免引入过多复杂的问题,容易调试,减轻程序员的负担。
具有可扩展性,API开放,当本身功能不够用的时候,可以自行编码扩展。
开发者活跃,产品有稳定的发展保障。
(1) JDBC:多数Java开发人员是用JDBC来和数据库进行通信,它可以通过DAO模式进行改善和提高。但这种方式在大型应用程序中不容易操作使用,且维护起来相当困难。
(2) EJB:EJB通常是在数据持久技术上的第二个选择,它是通过entitybeans来对数据进行持久化。首先就需要购买一个价位合理的EJB容器一J2EE应用服务器,也可以采用开源项目的免费EJB容器,比如JBOSS。但是很多商业EJB容器的性能和技术支持不太好,在EJB中实现JDBC也比较复杂。
(3) JDO:JDO的出现似乎有了一些改观,但是,JDO没有一个好的开源免费实现。好的产品部是商业产品,并且在国内没有销售和技术支持。JDO也不是一个轻量级封装.它建立的持久层框架,很不完善。再加上JDO的标准还很不完善以及严重的产品分裂问题,使得很多操作方式很是烦琐。
(4) Hibernate:Hibernate这种持久框架在某些方面有很大的不同,它不需要任何容器,提供简单易用的API,也解决了JDO的很多缺陷。作为一个良好的ORM ,它有如下特点:
透明地提供对象与关系数据库的映射,以统一的接口方式支持多种数据库。
缓存机制,复杂的缓存机制和锁定策略,使针对数据库操作大大减少。
开源免费的License,可以在需要的时候研究源代码,改写源代码,进行功能的定制。
轻量级封装,避免引入过多复杂的问题,容易调试,减轻程序员的负担。
具有可扩展性,API开放,当本身功能不够用的时候,可以自行编码扩展。
开发者活跃,产品有稳定的发展保障。
相关文章推荐
- Hibernate与JDBC、EJB、JDO的比较
- Hibernate EJB JDO JDBC的比较
- Hibernate与JDBC、EJB、JDO的比较
- 数据持久化(JDBC/EJB/JDO/OJB/Hibernate)
- JDBC、JDO和Hibernate的比较和区别
- Hibernate:入门及与JDBC优劣比较
- jdbc与hibernate的优缺点比较
- 【JavaEE】之MyBatis与原生JDBC、Hibernate访问数据库的比较
- JDO持久 (jdbc ejb)
- Hibernate和JDBC实现CRUD操作的比较
- jdbc与hibernate的优缺点比较
- Hibernate JDBC比较及系统调优
- jdbc与hibernate的优缺点比较(转载的精髓)
- jdbc与hibernate的优缺点比较-[JAVAeye]
- 关于MyBatis的工作流程和与JDBC的比较与Hibernate的比较
- jdbc与hibernate的优缺点比较
- jdbc与hibernate的优缺点比较(转载的精髓)
- JDO、EJB/CMP、Hibernate和Amber的比较
- jdbc与hibernate性能比较总结
- Hibernate原理,与JDBC比较