Mybatis框架,和Hibernate框架的区别是什么? hibernate和mybatis都是持久化框架,有什么区别

mybatis\u548chibernate\u7684\u4e4b\u95f4\u6700\u5927\u533a\u522b\u662f\u4ec0\u4e48\u9ebb\u70e6\u8be6\u7ec6\u8bf4\u4e00\u4e0b ~

\u4e00\u3001 hibernate\u662f\u5c01\u88c5\u5f88\u597d\u7684\u6846\u67b6\uff0cmybatis\u662f\u534a\u81ea\u52a8\u7684\u3002
hibernate\u5b8c\u5168\u53ef\u4ee5\u901a\u8fc7\u5bf9\u8c61\u5173\u7cfb\u6a21\u578b\u5b9e\u73b0\u5bf9\u6570\u636e\u5e93\u7684\u64cd\u4f5c\uff0c\u62e5\u6709\u5b8c\u6574\u7684JavaBean\u5bf9\u8c61\u4e0e\u6570\u636e\u5e93\u7684\u6620\u5c04\u7ed3\u6784\u6765\u81ea\u52a8\u751f\u6210sql\u3002
mybatis\u4ec5\u6709\u57fa\u672c\u7684\u5b57\u6bb5\u6620\u5c04\uff0c\u5bf9\u8c61\u6570\u636e\u4ee5\u53ca\u5bf9\u8c61\u5b9e\u9645\u5173\u7cfb\u4ecd\u7136\u9700\u8981\u901a\u8fc7\u624b\u5199sql\u6765\u5b9e\u73b0\u548c\u7ba1\u7406\u3002
\u4e8c\u3001.hibernate\u6570\u636e\u5e93\u79fb\u690d\u6027\u8fdc\u5927\u4e8emybatis\u3002
hibernate\u901a\u8fc7\u5b83\u5f3a\u5927\u7684\u6620\u5c04\u7ed3\u6784\u548chql\u8bed\u8a00\uff0c\u5927\u5927\u964d\u4f4e\u4e86\u5bf9\u8c61\u4e0e\u6570\u636e\u5e93(oracle\u3001 mysql\u7b49)\u7684\u8026\u5408\u6027\u3002
mybatis\u7531\u4e8e\u9700\u8981\u624b\u5199sql\uff0c\u56e0\u6b64\u4e0e\u6570\u636e\u5e93\u7684\u8026\u5408\u6027\u76f4\u63a5\u53d6\u51b3\u4e8e\u7a0b\u5e8f\u5458\u5199sql\u7684\u65b9\u6cd5\uff0c\u5982\u679csql\u4e0d\u5177\u901a\u7528\u6027\u800c\u7528\u4e86\u5f88\u591a\u67d0\u6570\u636e\u5e93\u7279\u6027\u7684sql\u8bed\u53e5\u7684\u8bdd\uff0c\u79fb\u690d\u6027\u4e5f\u4f1a\u968f\u4e4b\u964d\u4f4e\u5f88\u591a\uff0c\u6210\u672c\u5f88\u9ad8\u3002
\u4e09\u3001hibernate\u62e5\u6709\u5b8c\u6574\u7684\u65e5\u5fd7\u7cfb\u7edf\uff0cmybatis\u5219\u6b20\u7f3a\u4e00\u4e9b\u3002
hibernate\u65e5\u5fd7\u7cfb\u7edf\u975e\u5e38\u5065\u5168\uff0c\u6d89\u53ca\u5e7f\u6cdb\uff0c\u5305\u62ec\uff1asql\u8bb0\u5f55\u3001\u5173\u7cfb\u5f02\u5e38\u3001\u4f18\u5316\u8b66\u544a\u3001\u7f13\u5b58\u63d0\u793a\u3001\u810f\u6570\u636e\u8b66\u544a\u7b49;\u800cmybatis\u5219\u9664\u4e86\u57fa\u672c\u8bb0\u5f55\u529f\u80fd\u5916\uff0c\u529f\u80fd\u8584\u5f31\u5f88\u591a\u3002
\u56db\u3001mybatis\u76f8\u6bd4hibernate\u7b80\u5355\u6613\u4e0a\u624b
hibernate\u914d\u7f6e\u8981\u6bd4mybatis\u590d\u6742\u7684\u591a\uff0c\u5b66\u4e60\u6210\u672c\u4e5f\u6bd4mybatis\u9ad8\u3002
\u4e94\u3001sql\u4f18\u5316\u4e0a\uff0cmybatis\u8981\u6bd4hibernate\u65b9\u4fbf\u5f88\u591a
\u7531\u4e8emybatis\u7684sql\u90fd\u662f\u5199\u5728xml\u91cc\uff0c\u56e0\u6b64\u4f18\u5316sql\u6bd4hibernate\u65b9\u4fbf\u5f88\u591a\u3002\u800c hibernate\u7684sql\u5f88\u591a\u90fd\u662f\u81ea\u52a8\u751f\u6210\u7684\uff0c\u65e0\u6cd5\u76f4\u63a5\u7ef4\u62a4sql;\u867d\u6709hql\uff0c\u4f46\u529f\u80fd\u8fd8\u662f\u4e0d\u53casql\u5f3a\u5927\uff0c\u89c1\u5230\u62a5\u8868\u7b49\u53d8\u6001\u9700\u6c42\u65f6\uff0chql\u4e5f\u6b47\u83dc\uff0c\u4e5f\u5c31 \u662f\u8bf4hql\u662f\u6709\u5c40\u9650\u7684;hibernate\u867d\u7136\u4e5f\u652f\u6301\u539f\u751fsql\uff0c\u4f46\u5f00\u53d1\u6a21\u5f0f\u4e0a\u5374\u4e0eorm\u4e0d\u540c\uff0c\u9700\u8981\u8f6c\u6362\u601d\u7ef4\uff0c\u56e0\u6b64\u4f7f\u7528\u4e0a\u4e0d\u662f\u975e\u5e38\u65b9\u4fbf\u3002\u603b\u4e4b\u5199sql\u7684\u7075 \u6d3b\u5ea6\u4e0ahibernate\u4e0d\u53camybatis\u3002

\u3000\u3000\u4ee5\u524d\u6ca1\u600e\u4e48\u7528\u8fc7mybatis\uff0c\u53ea\u77e5\u9053\u4e0ehibernate\u4e00\u6837\u662f\u4e2aorm\u6570\u636e\u5e93\u6846\u67b6\u3002\u968f\u7740\u4f7f\u7528\u719f\u7ec3\u5ea6\u7684\u589e\u52a0\uff0c\u53d1\u73b0\u5b83\u4e0ehibernate\u533a\u522b\u662f\u975e\u5e38\u5927\u7684\uff0c\u7ed3\u5408\u81f3\u4eca\u4e3a\u6b62\u7684\u7ecf\u9a8c\uff0c\u603b\u7ed3\u51fa\u4ee5\u4e0b\u51e0\u70b9\uff1a
1. hibernate\u662f\u5168\u81ea\u52a8\uff0c\u800cmybatis\u662f\u534a\u81ea\u52a8\u3002
hibernate\u5b8c\u5168\u53ef\u4ee5\u901a\u8fc7\u5bf9\u8c61\u5173\u7cfb\u6a21\u578b\u5b9e\u73b0\u5bf9\u6570\u636e\u5e93\u7684\u64cd\u4f5c\uff0c\u62e5\u6709\u5b8c\u6574\u7684JavaBean\u5bf9\u8c61\u4e0e\u6570\u636e\u5e93\u7684\u6620\u5c04\u7ed3\u6784\u6765\u81ea\u52a8\u751f\u6210sql\u3002\u800cmybatis\u4ec5\u6709\u57fa\u672c\u7684\u5b57\u6bb5\u6620\u5c04\uff0c\u5bf9\u8c61\u6570\u636e\u4ee5\u53ca\u5bf9\u8c61\u5b9e\u9645\u5173\u7cfb\u4ecd\u7136\u9700\u8981\u901a\u8fc7\u624b\u5199sql\u6765\u5b9e\u73b0\u548c\u7ba1\u7406\u3002
2. hibernate\u6570\u636e\u5e93\u79fb\u690d\u6027\u8fdc\u5927\u4e8emybatis\u3002
hibernate\u901a\u8fc7\u5b83\u5f3a\u5927\u7684\u6620\u5c04\u7ed3\u6784\u548chql\u8bed\u8a00\uff0c\u5927\u5927\u964d\u4f4e\u4e86\u5bf9\u8c61\u4e0e\u6570\u636e\u5e93\uff08oracle\u3001mysql\u7b49\uff09\u7684\u8026\u5408\u6027\uff0c\u800cmybatis\u7531\u4e8e\u9700\u8981\u624b\u5199sql\uff0c\u56e0\u6b64\u4e0e\u6570\u636e\u5e93\u7684\u8026\u5408\u6027\u76f4\u63a5\u53d6\u51b3\u4e8e\u7a0b\u5e8f\u5458\u5199sql\u7684\u65b9\u6cd5\uff0c\u5982\u679csql\u4e0d\u5177\u901a\u7528\u6027\u800c\u7528\u4e86\u5f88\u591a\u67d0\u6570\u636e\u5e93\u7279\u6027\u7684sql\u8bed\u53e5\u7684\u8bdd\uff0c\u79fb\u690d\u6027\u4e5f\u4f1a\u968f\u4e4b\u964d\u4f4e\u5f88\u591a\uff0c\u6210\u672c\u5f88\u9ad8\u3002
3. hibernate\u62e5\u6709\u5b8c\u6574\u7684\u65e5\u5fd7\u7cfb\u7edf\uff0cmybatis\u5219\u6b20\u7f3a\u4e00\u4e9b\u3002
hibernate\u65e5\u5fd7\u7cfb\u7edf\u975e\u5e38\u5065\u5168\uff0c\u6d89\u53ca\u5e7f\u6cdb\uff0c\u5305\u62ec\uff1asql\u8bb0\u5f55\u3001\u5173\u7cfb\u5f02\u5e38\u3001\u4f18\u5316\u8b66\u544a\u3001\u7f13\u5b58\u63d0\u793a\u3001\u810f\u6570\u636e\u8b66\u544a\u7b49\uff1b\u800cmybatis\u5219\u9664\u4e86\u57fa\u672c\u8bb0\u5f55\u529f\u80fd\u5916\uff0c\u529f\u80fd\u8584\u5f31\u5f88\u591a\u3002
4. mybatis\u76f8\u6bd4hibernate\u9700\u8981\u5173\u5fc3\u5f88\u591a\u7ec6\u8282
hibernate\u914d\u7f6e\u8981\u6bd4mybatis\u590d\u6742\u7684\u591a\uff0c\u5b66\u4e60\u6210\u672c\u4e5f\u6bd4mybatis\u9ad8\u3002\u4f46\u4e5f\u6b63\u56e0\u4e3amybatis\u4f7f\u7528\u7b80\u5355\uff0c\u624d\u5bfc\u81f4\u5b83\u8981\u6bd4hibernate\u5173\u5fc3\u5f88\u591a\u6280\u672f\u7ec6\u8282\u3002mybatis\u7531\u4e8e\u4e0d\u7528\u8003\u8651\u5f88\u591a\u7ec6\u8282\uff0c\u5f00\u53d1\u6a21\u5f0f\u4e0a\u4e0e\u4f20\u7edfjdbc\u533a\u522b\u5f88\u5c0f\uff0c\u56e0\u6b64\u5f88\u5bb9\u6613\u4e0a\u624b\u5e76\u5f00\u53d1\u9879\u76ee\uff0c\u4f46\u5ffd\u7565\u7ec6\u8282\u4f1a\u5bfc\u81f4\u9879\u76ee\u524d\u671fbug\u8f83\u591a\uff0c\u56e0\u800c\u5f00\u53d1\u51fa\u76f8\u5bf9\u7a33\u5b9a\u7684\u8f6f\u4ef6\u5f88\u6162\uff0c\u800c\u5f00\u53d1\u51fa\u8f6f\u4ef6\u5374\u5f88\u5feb\u3002hibernate\u5219\u6b63\u597d\u4e0e\u4e4b\u76f8\u53cd\u3002\u4f46\u662f\u5982\u679c\u4f7f\u7528hibernate\u5f88\u719f\u7ec3\u7684\u8bdd\uff0c\u5b9e\u9645\u4e0a\u5f00\u53d1\u6548\u7387\u4e1d\u6beb\u4e0d\u5dee\u4e8e\u751a\u81f3\u8d85\u8d8amybatis\u3002
5. sql\u76f4\u63a5\u4f18\u5316\u4e0a\uff0cmybatis\u8981\u6bd4hibernate\u65b9\u4fbf\u5f88\u591a
\u7531\u4e8emybatis\u7684sql\u90fd\u662f\u5199\u5728xml\u91cc\uff0c\u56e0\u6b64\u4f18\u5316sql\u6bd4hibernate\u65b9\u4fbf\u5f88\u591a\u3002\u800chibernate\u7684sql\u5f88\u591a\u90fd\u662f\u81ea\u52a8\u751f\u6210\u7684\uff0c\u65e0\u6cd5\u76f4\u63a5\u7ef4\u62a4sql\uff1b\u867d\u6709hql\uff0c\u4f46\u529f\u80fd\u8fd8\u662f\u4e0d\u53casql\u5f3a\u5927\uff0c\u89c1\u5230\u62a5\u8868\u7b49\u53d8\u6001\u9700\u6c42\u65f6\uff0chql\u4e5f\u6b47\u83dc\uff0c\u4e5f\u5c31\u662f\u8bf4hql\u662f\u6709\u5c40\u9650\u7684\uff1bhibernate\u867d\u7136\u4e5f\u652f\u6301\u539f\u751fsql\uff0c\u4f46\u5f00\u53d1\u6a21\u5f0f\u4e0a\u5374\u4e0eorm\u4e0d\u540c\uff0c\u9700\u8981\u8f6c\u6362\u601d\u7ef4\uff0c\u56e0\u6b64\u4f7f\u7528\u4e0a\u4e0d\u662f\u975e\u5e38\u65b9\u4fbf\u3002\u603b\u4e4b\u5199sql\u7684\u7075\u6d3b\u5ea6\u4e0ahibernate\u4e0d\u53camybatis\u3002

\u603b\u7ed3\uff1a
mybatis\uff1a\u5c0f\u5de7\u3001\u65b9\u4fbf\u3001\u9ad8\u6548\u3001\u7b80\u5355\u3001\u76f4\u63a5\u3001\u534a\u81ea\u52a8
hibernate\uff1a\u5f3a\u5927\u3001\u65b9\u4fbf\u3001\u9ad8\u6548\u3001\u590d\u6742\u3001\u7ed5\u5f2f\u5b50\u3001\u5168\u81ea\u52a8

mybatis\uff1a
1. \u5165\u95e8\u7b80\u5355\uff0c\u5373\u5b66\u5373\u7528\uff0c\u63d0\u4f9b\u4e86\u6570\u636e\u5e93\u67e5\u8be2\u7684\u81ea\u52a8\u5bf9\u8c61\u7ed1\u5b9a\u529f\u80fd\uff0c\u800c\u4e14\u5ef6\u7eed\u4e86\u5f88\u597d\u7684SQL\u4f7f\u7528\u7ecf\u9a8c\uff0c\u5bf9\u4e8e\u6ca1\u6709\u90a3\u4e48\u9ad8\u7684\u5bf9\u8c61\u6a21\u578b\u8981\u6c42\u7684\u9879\u76ee\u6765\u8bf4\uff0c\u76f8\u5f53\u5b8c\u7f8e\u3002
2. \u53ef\u4ee5\u8fdb\u884c\u66f4\u4e3a\u7ec6\u81f4\u7684SQL\u4f18\u5316\uff0c\u53ef\u4ee5\u51cf\u5c11\u67e5\u8be2\u5b57\u6bb5\u3002
3. \u7f3a\u70b9\u5c31\u662f\u6846\u67b6\u8fd8\u662f\u6bd4\u8f83\u7b80\u964b\uff0c\u529f\u80fd\u5c1a\u6709\u7f3a\u5931\uff0c\u867d\u7136\u7b80\u5316\u4e86\u6570\u636e\u7ed1\u5b9a\u4ee3\u7801\uff0c\u4f46\u662f\u6574\u4e2a\u5e95\u5c42\u6570\u636e\u5e93\u67e5\u8be2\u5b9e\u9645\u8fd8\u662f\u8981\u81ea\u5df1\u5199\u7684\uff0c\u5de5\u4f5c\u91cf\u4e5f\u6bd4\u8f83\u5927\uff0c\u800c\u4e14\u4e0d\u592a\u5bb9\u6613\u9002\u5e94\u5feb\u901f\u6570\u636e\u5e93\u4fee\u6539\u3002
4. \u4e8c\u7ea7\u7f13\u5b58\u673a\u5236\u4e0d\u4f73\u3002
hibernate\uff1a
1. \u529f\u80fd\u5f3a\u5927\uff0c\u6570\u636e\u5e93\u65e0\u5173\u6027\u597d\uff0cO/R\u6620\u5c04\u80fd\u529b\u5f3a\uff0c\u5982\u679c\u4f60\u5bf9Hibernate\u76f8\u5f53\u7cbe\u901a\uff0c\u800c\u4e14\u5bf9Hibernate\u8fdb\u884c\u4e86\u9002\u5f53\u7684\u5c01\u88c5\uff0c\u90a3\u4e48\u4f60\u7684\u9879\u76ee\u6574\u4e2a\u6301\u4e45\u5c42\u4ee3\u7801\u4f1a\u76f8\u5f53\u7b80\u5355\uff0c\u9700\u8981\u5199\u7684\u4ee3\u7801\u5f88\u5c11\uff0c\u5f00\u53d1\u901f\u5ea6\u5f88\u5feb\uff0c\u975e\u5e38\u723d\u3002
2. \u6709\u66f4\u597d\u7684\u4e8c\u7ea7\u7f13\u5b58\u673a\u5236\uff0c\u53ef\u4ee5\u4f7f\u7528\u7b2c\u4e09\u65b9\u7f13\u5b58\u3002
3. \u7f3a\u70b9\u5c31\u662f\u5b66\u4e60\u95e8\u69db\u4e0d\u4f4e\uff0c\u8981\u7cbe\u901a\u95e8\u69db\u66f4\u9ad8\uff0c\u800c\u4e14\u600e\u4e48\u8bbe\u8ba1O/R\u6620\u5c04\uff0c\u5728\u6027\u80fd\u548c\u5bf9\u8c61\u6a21\u578b\u4e4b\u95f4\u5982\u4f55\u6743\u8861\u53d6\u5f97\u5e73\u8861\uff0c\u4ee5\u53ca\u600e\u6837\u7528\u597dHibernate\u65b9\u9762\u9700\u8981\u4f60\u7684\u7ecf\u9a8c\u548c\u80fd\u529b\u90fd\u5f88\u5f3a\u624d\u884c\u3002
\u4e3e\u4e2a\u5f62\u8c61\u7684\u6bd4\u55bb\uff1a
mybatis\uff1a\u673a\u68b0\u5de5\u5177\uff0c\u4f7f\u7528\u65b9\u4fbf\uff0c\u62ff\u6765\u5c31\u7528\uff0c\u4f46\u5de5\u4f5c\u8fd8\u662f\u8981\u81ea\u5df1\u6765\u4f5c\uff0c\u4e0d\u8fc7\u5de5\u5177\u662f\u6d3b\u7684\uff0c\u600e\u4e48\u4f7f\u7531\u6211\u51b3\u5b9a\u3002
hibernate\uff1a\u667a\u80fd\u673a\u5668\u4eba\uff0c\u4f46\u7814\u53d1\u5b83\uff08\u5b66\u4e60\u3001\u719f\u7ec3\u5ea6\uff09\u7684\u6210\u672c\u5f88\u9ad8\uff0c\u5de5\u4f5c\u90fd\u53ef\u4ee5\u6446\u8131\u4ed6\u4e86\uff0c\u4f46\u4ec5\u9650\u4e8e\u5b83\u80fd\u505a\u7684\u4e8b\u3002

1 Hibernate : 标准的ORM(对象关系映射) 框架;
不要用写sql, sql 自动语句生成; 使用Hibernate 对sql 进行优化,修改比较困难
应用场景: 试用需求,变化固定中小型项目;ERP,ORM,OA
2 mybatis: 程序员自己编写sql, sql 修改,优化比较自由。
mybatis 是一个不完全的ORM 框架(部分), mybatis 存在
映射关系(输入,输出映射);
应用场景: 除了hibernate 的场景,主要应用需求项目较多的场景, 互联网项目; 敏捷开发。
映射关系描述
hibernate: 对数据库结构提供了较为完整的封装,hibernate 的O/R Mapping实现了POJO 和数据库表之间的映射,以及SQL 的自动生成和执行。
只需定义好了POJO 到数据库表的映射关系,即可通过提供的方法完成持久层操作。
不需要对SQL 的熟练掌握, 会根据制定的存储逻辑,自动生成对应的SQL 并调用JDBC 接口加以执行。
mybatis:POJO SQL之间的映射关系。然后通过映射配置文件,将SQL所需的参数,以及返回的结果字段映射到指定POJO。 相对“O/R”而言,iBATIS 是一种“Sql Mapping”的ORM实现。

数据库的无关性:
hibernate 的 具体数据只需要利用xml 进行关联; HQL 语句与数据库无关
mybatis 更接近sql ,因此对数据库的依赖较多。

Mybatis优势

MyBatis可以进行更为细致的SQL优化,可以减少查询字段。
MyBatis容易掌握,而Hibernate门槛较高。

Hibernate优势

Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。
Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。
Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。
Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳

  • hibeinate濡備綍鏇挎崲鎴mybatis
    绛旓細1銆乮mplDao瀹炵幇鎺ュ彛鐨勫湴鏂硅鏀癸紝濡傦細hibernate鐢ㄧ殑HibernateSessionFactory鏀规垚mybatis鐢ㄧ殑SqlSessionFactoryBean锛2銆侀厤缃枃浠讹紝涓や釜锛歝onfiguration.xml(鎶婂鐞唖ql鐨勯厤缃枃浠舵斁鍦ㄩ噷闈紝鍏蜂綋涓嶅お娓呮);澶勭悊sql鐨勯厤缃枃浠讹紱3銆乻pring鐨勯厤缃枃浠禷pplicationContext.xml鏀瑰ソ灏辨垚浜嗭紝杩欓噷涓昏鏀筪ataSource鍜宻essionFactor...
  • 扩展阅读:mybatis-plus面试题 ... jpa框架和mybatis的区别 ... 为什么不建议打hib ... mybatis-plus框架 ... 小糯米国际服框架 ... mybatis是orm框架吗 ... 手写mybatis框架制作 ... java三大主流框架 ... springmvc三层架构 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网