jdbc和hibernate的区别

作者&投稿:真重 (若有异议请与网页底部的电邮联系)
hibernate连接与JDBC连接的区别~

1.hibernate和jdbc主要区别就是,hibernate先检索缓存中的映射对象( 即hibernate操作的是对象),而jdbc则是直接操作数据库.

2.Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。Hibernate可以用在任何JDBC可以使用的场合

3.Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。

还有一点,正确的使用JDBC技术,它的效率一定比hibernate要好,因为hibernate是基于jdbc的技术.

相同点:
1 两者都是JAVA的数据库操作中间件。
2 两者对于数据库进行直接操作的对象都不是线程安全的,都需要及时关闭。
3 两者都可以对数据库的更新操作进行显式的事务处理。

不同点:
1 使用的SQL语言不同:JDBC使用的是基于关系型数据库的标准SQL语言,Hibernate使用的是HQL(Hibernate query language)语言
2 操作的对象不同:JDBC操作的是数据,将数据通过SQL语句直接传送到数据库中执行,Hibernate操作的是持久化对象,由底层持久化对象的数据更新到数据库中。
3 数据状态不同:JDBC操作的数据是“瞬时”的,变量的值无法与数据库中的值保持一致,而Hibernate操作的数据是可持久的,即持久化对象的数据属性的值是可以跟数据库中的值保持一致的。

JDBC与Hibernate在性能上相比,JDBC灵活性有优势。而Hibernate在易学性,易用性上有些优势。当用到很多复杂的多表联查和复杂的数据库操作时,JDBC有优势。

JDBC和Hibernate的相同点:

1.都是JAVA的数据库操作中间件。

2.两者对于数据库进行直接操作的对象都不是线程安全的,都需要及时关闭。

两者都可以对数据库的更新操作进行显式的事物处理。
JDBC和Hibernate的不同点:

1.使用的SQL语言不同,JDBC是基于关系型数据库的标准SQL语言,Hibernate使用的是HQL(Hibernate query language)语言。

2.操作的对象不同:JDBC操作的是数据,将数据通过SQL语句直接传送到数据库中执行,而Hibernate操作的是持久化对象,由底层持久化对象的数据更新到数据库中。

3.数据状态不同:JDBC操作的数据时“瞬时"的,变量值无法与数据库中的值保持一致,而Hibernate操作的数据时刻持久的,就是持久化对象的数据属性的值时可以跟数据库中的值保持一致的。



jdbc与hibernate的优缺点比较
答:1、内存消耗:采用JDBC的架构2无疑是最省内存的,Hibernate的架构3次之,EB的架构1最差。2、运行效率:如果JDBC的代码写的非常优化,那么JDBC架构运行效率最高,但是实际项目中,这一点几乎做不到,这需要程序员非常精通JDBC,运用Batch语句,调整PreapredStatement的Batch Size和Fetch Size等参数,以及在...

jdbc和hibernate的区别
答:两者都可以对数据库的更新操作进行显式的事物处理。JDBC和Hibernate的不同点:1.使用的SQL语言不同,JDBC是基于关系型数据库的标准SQL语言,Hibernate使用的是HQL(Hibernate query language)语言。2.操作的对象不同:JDBC操作的是数据,将数据通过SQL语句直接传送到数据库中执行,而Hibernate操作的是持久化...

Hibernate与jdbc哪个好?各自的优点和缺点
答:我个人认为Hibernate Iterator是JDBC Result的封装,Hibernate List是Scrollable Result的封装,所以我推测,如果在Oracle或者DB2上面做同样的Read测试,如果结果集小于FetchSize,4者在速度上应该都不会有 差别;如果结果集大于FetchSize的话,但是不是FetchSize的很多倍,速度排名应该是:JDBC Scrollable Result (消耗时间最少) < ...

在做hibernate的时候为什么还要加jdbc驱动呢?我想理解一下hibernate的...
答:简单说,就是hibernate底下是直接使用jdbc的api接口进行的编程,然后操作具体的某种数据库时候,jdbc的api接口需要针对这个具体数据库系统的实现,即特定的jdbc驱动了。

Hibernate 和 JDBC 的优缺点?
答:Hibernate:优:面向对象的思维,一些简单查询不需要sql语句。比较方便。使用者不必了解sql语句。缺:面对一些复杂查询的时候不是很灵活,比如要查询多个表的数据作为结果集,用hibernate就要设置这些表的实体对象关联关系。(虽然hibernate也可以执行sql,但是感觉效率不高)jdbc:原生sql。需要了解sql语言。优:...

jdbc mybatis hibernate 怎么开启关闭事务
答:JDBC使用Connection控制事务,它有如下方法:setAutoCommit(false):开启事务,commit:提交事务 rollback:回滚事务 ---手动分割线--- MyBatis使用SqlSession控制事务,它提供如下方法 commit:提交事务 rollback:回滚事务 ---手动分割线--- Hibernate使用Tranaction控制事务,提供如下方法 commit:提交事务 r...

hibernate的优化问题?
答:初用HIBERNATE的人也许都遇到过性能问题,实现同一功能,用HIBERNATE与用JDBC性能相差十几倍很正常,如果不及早调整,很可能影响整个项目的进度。大体上,对于HIBERNATE性能调优的主要考虑点如下:数据库设计调整 HQL优化 API的正确使用(如根据不同的业务类型选用不同的集合及查询API)主配置参数(日志,查询缓存...

jdbc框架有哪些除了dbutil
答:1、SpringJDBC:SpringJDBC是Spring框架中的一个模块,提供了针对JDBC的封装,可以更方便地操作数据库。2、MyBatis:MyBatis是一个比较流行的ORM框架,它通过XML或注解的方式实现了SQL语句和Java对象的映射关系,使得开发者可以更轻松地编写和维护SQL语句。3、Hibernate:Hibernate是一个比较成熟的ORM框架,它...

hibernate工作原理及为什么要用
答:Hibernate是一种ORM框架,主要作用是简化应用的数据持久层编程,不需要程序员编写大量SQL和JDBC说代码,也可以说成是对象持久化技术。所谓持久化对象(Persistent Object)即封装了数据库表记录的对象。程序中使用的对象是短暂的状态,当不使用时java的GC机制会自动释放不用的对象。而利用hibernate便可以实现...

hibernate的优缺点是什么?
答:1.Hibernate的优缺点:优点:1、程序更加面向对象;2、提高了生产率;3、方便移植(修改配置文件);4、无侵入性。缺点:1、效率比JDBC略差;2、不适合批量操作。2.Hibernate有四种查询方案:1、get,load方法,根据id查找对象 2、HQL--hibernate query language(查询对象:Query)3、Criteria--标准查询...