You are on page 1of 4

Why I Choose Hibernate For My Project?

Posted on December 4, 2008 , By mkyong Last modified : January 13, 2010

Currently my company is using IBATIS and pure SQLs as database persistence mechanism. I like SQL query very much, especially in tuning, but i do not like to write all SQL statement in Java application, its easy to hit typo error and what a stupid and tedi ous job? Finally my company has a new project come in, and this is the right time to propose Hibernate as our new java database persistence mechanism tool. In order to persuade my boss to accept the Hibernate as the new project consideration, i have to highlight the benefits and advantages of Hibernate.

Why O/R mapping?

1. Productivity
It helps developers get rid of writing complex and tedious SQL statement, no more need of JDBC APIs for result set or data handling. It makes developers more concentrate on the business logic and increase the projects productivity.

2. Maintainability
It helps reduce the lines of code, makes system more understandable and emphasizes more on business logic rather than persistence work (SQLs). More important, a system with less code is more easier to refactor.

3. Portability
It abstracts our application away from the underlying SQL database and sql dialect. Switching to other SQL database requires few changes in Hibernate configuration file (Write once / run-anywhere).

Boss : well, sound interesting tool to me. (actually , i do not know what are you talk about) is there any others O/R mapping tools or database persistence mechanism that did same thing like Hibernate? Me : Yes,Boss, it does exits, however i need to tell you , why i choose Hibernate over the others.

Why choose Hibernate over the others?


Popular Open Source Persistence Frameworks in Java 1. Hibernate http://www.hibernate.org/ 2. EJB3 http://java.sun.com/products/ejb/index.jsp 3. Oracle Top Links http://www.oracle.com/technology/products/ias/toplink/index.html 4. Cayenne http://cayenne.apache.org/ 5. Open JPA http://openjpa.apache.org/ 6. IBATIS- http://ibatis.apache.org/javadownloads.cgi 7. JPOX http://www.jpox.org/ I do not want to compare every O/R or non O/R persistence mechanism individually, it may spent more than a year in research and hand-on practice comparative. Base on my personal humble opinion, I will choose Hibernate as the best O/R mapping persistence mechanism over the other tools.

Reason of choosing Hibernate

1. Productivity, Maintainability, Portability

Hibernate provides all above O/R benefits. (Productivity, Maintainability, Portability).

2. Free Cost Effective


Hibernate is free and open source Cost Effective

3. Learning curve is short


Since we all have working experience in using Hibernate, and Hibernate is totally object orientated concept, it will shorted our learning curve.

4. Code generation tool


Hibernate tools provided by community helps developer generate or develop hibernate application very fast and easy. (Eclipses Plugin & Code generation tools)

5. Popular
Hibernate is popular, when we goes wrong with Hibernate, we can easily find the answer from Google. In addition, there are many books, communities and forums on Hibernate.

Me: Hi Boss, hi, hi, are you listening? Boss : yes, yes, i get what you means. Me :.(really?) Boss : Since you listed out so many benefits, its open source and free, i will support you , just remember do not delay the delivery date. Me : (freedelivery datethis is boss) Thanks Boss you are Great!
Heres one more advantage of using Hibernate that i didnt inform my boss. May be i add it as number 6.

6) Market demand it
Java Market need Hibernate developer, demand of Hibernate developer is in decent growth and compare to the other tools. Hibernate working experience definitely add advantages for my next jump. Do you think i should inform my boss? :)

You might also like