JPA_and_Hibernate

How Hibernate SessionFactory works

Posted On
Posted By admin

In this article, I will be explaining what is Hibernate SessionFactory and how it works.

Consider the following code that demonstrates a typical Hibernate application:

SessionFactory  sessionFactory = new Configuration().configure().buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
session.save(person);
tx.commit();
session.close();
sessionFactory.close();

 

  • This code first creates a  SessionFactory object.  The sessionFactory contains all the data in the hibernate configuration file. The code uses the Configuration class to create the SessionFactory instance.
  • The configuration.configure method reads the hibernate.cfg.xml file and sets up the Configuation object using the properties in this file.
  • The buildSessionFactory method builds the sessionFactory object using this configuration data.
  • The SessionFactory object is usually created only once at the start of the application and kept for later use.
  • The SessionFactory corresponds to the database config file. So you will need different SessionFactory instances if your application connects to different databases.
  • You can then use the SessionFactory instance to obtain a Session and interact with the database

So I hope this blog post was useful to understand how the SessionFactory works internally. Happy learning!!

Further Learning

Master JPA and Hibernate with Spring Boot
Spring Data JPA with Hibernate
Hibernate and JPA Fundamentals

If you'd like to watch a detailed video tutorial of this topic or other related topics, do check out my Hibernate course Hibernate from scratch

If you like this post, please do let me know via the comments box below.  You can also connect with me via my Facebook Page or subscribe to my Youtube channel!

Related Post

leave a Comment