How to use hibernate.properties file instead of hibernate.cfg.xml How to use hibernate.properties file instead of hibernate.cfg.xml xml xml

How to use hibernate.properties file instead of hibernate.cfg.xml


This code will call hibernate.cfg.xml by default:

Configuration configuration = new Configuration().configure();

And this code will call hibernate.properties by default:

Configuration configuration = new Configuration();

Hope it helps.


From what i understood from hibernate the best thing to do is to define the mapping in the hibernate.cfg.xml file and other configurations in the hibernate.properties.

An alternative approach to configuration is to specify a full configuration in a file named hibernate.cfg.xml. This file can be used as a replacement for the hibernate.properties file or, if both are present, to override properties.

The hibernate.cfg.xml is also more convenient once you have to tune the Hibernate cache. It is your choice to use either hibernate.properties or hibernate.cfg.xml. Both are equivalent.

You can read more about this in the following link:

http://docs.jboss.org/hibernate/core/3.3/reference/en/html/session-configuration.html


Remove .configure() if you are using hibernate.properties. Below code isHibernateUtil session factory implementation.

private static SessionFactory buildSessionFactory() {    try {        Configuration configuration = new Configuration();        ServiceRegistry serviceRegistry            = new StandardServiceRegistryBuilder()                .applySettings(configuration.getProperties()).build();        configuration.addAnnotatedClass(LookUpModel.class);        return configuration                .buildSessionFactory(serviceRegistry);    }catch(Exception e) {        e.printStackTrace();        throw new RuntimeException("There is issue in hibernate util");    }}

hibernate.properites file

hibernate.connection.driver_class = com.mysql.jdbc.Driverhibernate.connection.url = jdbc:mysql://localhost:3306/testhibernate.connection.username = roothibernate.connection.password = passswordhibernate.c3p0.min_size=5hibernate.c3p0.max_size=20hibernate.c3p0.timeout=1800hibernate.c3p0.max_statements=50hibernate.dialect = org.hibernate.dialect.MySQL5Dialect