jdbc资料收集JDBC,MYBATIS,Hibernate性能对比!

 

jdbc不足

尽管JDBC在JAVA语言层面实现了统一,但不一样数据库仍旧有许多差别。为了更好地实现跨数据库操做,因而诞生了hibernate项目,Hibernate是对JDBC的再封装,实现了对数据库操做更宽泛的统一和更好的可移植性。html

二、java

 

二、java程序员从笨鸟到菜鸟之(七)一—java数据库操做

 

三、Java操做数据库--以SQL Server为例

 

 

 

四、JDBC与JNDI这两种链接方式有什么区别?

http://blog.sina.com.cn/s/blog_6c9e93cc0101191s.htmlmysql

直接使用JDBC或者经过JNDI引用数据源的编程代码量相差无几,可是如今的程序能够不用关心具体JDBC参数了。程序员

    在系统部署后,若是数据库的相关参数变动,只须要从新配置 mysql-ds.xml 修改其中的JDBC参数,只要保证数据源的名称不变,那么程序源代码就无需修改。sql

    因而可知,JNDI避免了程序与数据库之间的紧耦合,使应用更加易于配置、易于部署。数据库

 

ibatis与mybatis区别?编程

 

ibatis是mybatis的前身,在2010年7\8月份ibatis所项目移到了google,就将ibatis3.x正式更名为mybatis3.x了。session

除此以外,mybatis相比ibatis使用起来更加方便,有:mybatis

1)Mybatis实现了接口绑定,使用更加方便。 框架

2)对象关系映射的改进,效率更高

3)MyBatis采用功能强大的基于OGNL的表达式来消除其余元素

 

六、hibernate、MyBatis、JDBC区别

 

1)从层次上看,JDBC是较底层的持久层操做方式,而Hibernate和MyBatis都是在JDBC的基础上进行了封装使其更加方便程序员对持久层的操做。

2)从功能上看,JDBC就是简单的创建数据库链接,而后建立statement,将sql语句传给statement去执行,若是是有返回结果的查询语句,会将

查询结果放到ResultSet对象中,经过对ResultSet对象的遍历操做来获取数据;Hibernate是将数据库中的数据表映射为持久层的Java对象,实现

数据表的完整性控制;MyBatis是将sql语句中的输入参数和输出参数映射为java对象,放弃了对数据表的完整性控制,可是得到了更灵活和响应

性能更快的优点。

3)从使用上看,若是进行底层编程,并且对性能要求极高的话,应该采用JDBC的方式;若是要对数据库进行完整性控制的话建议使用Hibernate;

若是要灵活使用sql语句的话建议采用MyBatis框架。

 

 

JDBC,MYBATIS,Hibernate性能对比!

我分别测试了插入两行数据,选择58行和349行数据进行对比。表中session factory表示初始化,建立session factory的时间。hibernate sql query表示hibernate采用原生SQL操做方式。

若是只是偶尔操做一下数据库。

那么这个session factory时间会包含在内。可是若是大量操做数据,session factory时间之须要消耗一次便可,这个时候hibernate就占优了。

让我意外的是,mybatis性能没有想象的好,甚至不如hibernate。hibernate在SQL模式下,性能有所改善,可是和JDBC相比,仍是远远不如。

不管在什么模式下,JDBC能够说摇摇领先,性能之王。插入基本上是其余框架的3-5倍,选择更是保持在10倍以上。若是在乎性能,那么JDBC绝对是最佳的选择。

图上测试环境是:mySQL 5.6 hibernate 4.2,mybatis 3.2.1,都是这个时候的最新版本。

 

七、J2EE学习篇之--JDBC详解

 

 

 

八、Java jdbc数据库链接池总结!

 

java操做数据库链接池发现一篇很好的文章

http://www.blogjava.net/chunkyo/archive/2007/01/16/94266.html

http://www.360doc.com/content/12/0706/15/6161903_222624693.shtml

相关文章
相关标签/搜索