为什么我为我的项目选择Hibernate?

目前,我公司正在使用IBATIS和纯SQL作为数据库持久性机制。 我非常喜欢SQL查询,尤其是在调优中,但是我不喜欢在Java应用程序中编写所有SQL语句,很容易遇到拼写错误,这是多么愚蠢而又乏味的工作?

终于,我公司有了一个新项目,现在是将Hibernate推荐为我们新的java数据库持久性机制工具的合适时机。 为了说服老板接受Hibernate作为新项目的考虑,我必须强调Hibernate的好处和优势。

为什么要进行O / R映射?

1.生产力

它可以帮助开发人员摆脱编写复杂而乏味的SQL语句的需要,而不再需要用于结果集或数据处理的JDBC API。 它使开发人员更加专注于业务逻辑并提高了项目的生产率。

2.可维护性

它有助于减少代码行,使系统更易于理解,并更多地强调业务逻辑而不是持久性工作(SQL)。 更重要的是,代码较少的系统更易于重构。

3.便携性

它从底层SQL数据库和sql方言中抽象出我们的应用程序。 切换到其他SQL数据库几乎不需要更改Hibernate配置文件(一次写入/在任何地方运行)。

老板:对我来说,听起来很有趣。 (实际上,我不知道您在说什么)还有其他像Hibernate一样的O / R映射工具或数据库持久性机制吗?
我:是的,老板,它确实退出了,但是我要告诉你,为什么我选择Hibernate而不是其他。

为什么选择Hibernate而不是其他?

Java中流行的开源持久性框架

1. 休眠-http : //www.hibernate.org/
2. EJB3http://java.sun.com/products/ejb/index.jsp
3. Oracle热门链接http://www.oracle.com/technology/products/ias/toplink/index.html
4. 卡宴http://cayenne.apache.org/
5. 打开JPAhttp://openjpa.apache.org/
6. IBATIShttp://ibatis.apache.org/javadownloads.cgi
7. JPOXhttp://www.jpox.org/

我不想单独比较每个O / R或非O / R持久性机制,它可能花费了一年多的时间进行研究和动手实践比较。 基于我个人的拙见,我将选择Hibernate作为优于其他工具的最佳O / R映射持久性机制。

选择休眠的原因

1.生产率,可维护性,可移植性

Hibernate提供了上述所有O / R好处。 (生产力,可维护性,可移植性)。

2.免费-具有成本效益

Hibernate是免费和开源的–具有成本效益

3.学习曲线短

由于我们都有使用Hibernate的工作经验,并且Hibernate完全是面向对象的概念,因此它会缩短我们的学习曲线。

4.代码生成工具

社区提供的Hibernate工具可帮助开发人员非常快速,轻松地生成或开发Hibernate应用程序。 (Eclipse的插件和代码生成工具)

5.受欢迎

Hibernate非常流行,当我们在Hibernate上出错时,我们可以轻松地从Google找到答案。 此外,还有许多关于Hibernate的书籍,社区和论坛。

我:你好,老板,你好,你在听吗?
老板: …是的,是的,我明白你的意思。
我: ……(真的吗?)
老板:既然您列出了很多好处,它是开源的并且免费的,我会支持您的,请记住不要延迟交货日期。
我: ……(免费……交货日期……这是老板)谢谢老板……您真棒!

这是我没有通知老板的使用Hibernate的另一个优势。 可能我将其添加为数字6。

6)市场需求吧

Java Market需要Hibernate开发人员,与其他工具相比Hibernate开发人员的需求正在增长。 休眠的工作经验无疑会为我的下一个跳跃增加优势。 你认为我应该通知我的老板吗? 🙂

参考

休眠工具(Eclipse插件和代码生成)
http://www.hibernate.org/255.html
http://www.hibernate.org/hib_docs/tools/reference/zh/html_single/

1.休眠是最佳选择吗?
http://java.dzone.com/news/hibernate-best-choice

2. Hibernate VS TopLink VS CMP
http://www.theserverside.com/discussions/thread.tss?thread_id=27037

3. Hibernate与EJB 3.0持久性
http://www.theserverside.com/discussions/thread.tss?thread_id=38800

4.基于Hibernate,JDO和EJB3的持久性新J2EE应用的优缺点
http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=78&t=000927

5. iBATIS与Hibernate的比较-是什么原因导致一个被选中?
http://www.javalobby.org/java/forums/t16496.html

6. Java中的开源持久性框架
http://java-source.net/open-source/persistence

翻译自: https://mkyong.com/hibernate/why-i-choose-hibernate-for-my-project/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值