Hibernate is an open source object-relational mapping tool for Java that takes care of mapping Java objects to database tables and Java data types to SQL data types. It provides data query and retrieval facilities. This tutorial teaches how to use Hibernate to develop database-driven web applications in Java. It assumes knowledge of Java and basic understanding of relational databases and SQL.