· Hibernate is open source light weight ORM (Object Relational Mapping) tool
· It is a powerful, ultra –high performance object/relational persistence and query service for Java
· It simplifies the development of java application to interact with database.
· It lets us develop persistent objects following common Java idioms – including association, inheritance, polymorphism, composition and the Java collections framework
· It internally uses the JDBC API to interact with the database.
· Hibernate Query language is designed as a “minimal” object oriented extension to SQL, provide an elegant bridge between the object and relational worlds.
What make up a Hibernate application?
· Standard domain object defined in Java as POJO’s nothing more.
· Hibernate mapping file
· Hibernate configuration file
· Hibernate Runtime
Why use Hibernate?
· Simple to get up and running
· Transparent Persistence achieved using Reflection
· Isn’t intrusive to the build/deploy process
· Persistence objects can follow common OOPS principles.
· In most cases Java object do not even know they can be persistence
· Java developers can focus on object model
· Feel much more natural than Entity Beans or JDBC coding
· Query mechanism closely resembles SQL so learning curve is low