猿问

JDBC,Mybatis,hibernate 一些问题

已开始学习的是JDBC后来看了hibernate,感觉比JDBC麻烦,又看了Mybatis,还是感觉比JDBC麻烦,特别是配置xml
而在网上看了很多JDBC,Mybatis,hibernate这3个对比,性能都没法和JDBC对比,那为什么还出现Mybatis,hibernate呢?
是不是因为是初学者,一些复杂的功能还没遇到?
学javaMybatis,hibernate必须要学吗?
沧海一幻觉
浏览 411回答 2
2回答

肥皂起泡泡

Mybatis和hibernate是对JDBC进一步的封装,底层还是基于JDBC实现的。Hibernate用的不算深入,只谈自己对Mybatis使用的感觉,相对于直接使用JDBC有以下好处:1、JDBC释放资源的写法很容易出错,使用框架后这个问题就基本不存在了。即使用JDBC,一般也要封装一个Util类来处理,如Srping的JDBCTemplate,否则每个SQL语句外面包一大坨try/catch语句太麻烦了。2、对于常见的多个选择参数的查询页面,使用mybatis的标签很容易处理多个参数组合使用的情况,相比较写JDBC的拼接字符串要容易。3、如果项目中使用的是java的实体类,使用Mybatis可以方便的实现数据库行和对象的映射,手工写JDBC的话这部分的代码量会比较大,而且重复性很高。性能方面,如果只比较sql语句,JDBC的性能是最好的,毕竟Mybatis和hibernate封装JDBC后框架自身还是有开销的,但Mybatis和JDBC相比,性能应该差异不大。但考虑到这两个框架都自带了缓存机制,用好的话应该比单纯的JDBC性能要高。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答