Create Table Using Hibernate
Follow below steps :
Step : 1
Create Util package in your project directory.
Step : 2
Create Listener Class -
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import org.apache.log4j.Logger;
import com.util.HibernateUtil;
/**
* Application Lifecycle Listener implementation class HibernateListener
*
*/
public class HibernateListener implements ServletContextListener {
private static Logger log = Logger.getLogger(HibernateListener.class);
public void contextInitialized(ServletContextEvent event) {
log.info("HibernateListener - contextInitialized");
HibernateUtil.getSessionFactory();
// Just call the static initializer of that class
}
public void contextDestroyed(ServletContextEvent event) {
HibernateUtil.getSessionFactory().close(); // Free all resources
}
}
Step : 3
Create HibernateUtil class
import org.apache.log4j.Logger;
import org.hibernate.HibernateException;
import org.hibernate.SessionFactory;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.hibernate.cfg.Configuration;
public class HibernateUtil {
private static SessionFactory sessionFactory;
private static Logger log = Logger.getLogger(HibernateUtil.class);
static {
try {
Configuration configuration = new Configuration().configure();
log.info("Hibernate Configuration loaded");
StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder()
.applySettings(configuration.getProperties());
log.info("Hibernate serviceRegistry created");
sessionFactory = configuration.buildSessionFactory(builder.build());
} catch (HibernateException he) {
log.error("Initial SessionFactory creation failed." + he);
throw new ExceptionInInitializerError(he);
}
}
public static SessionFactory getSessionFactory() {
return sessionFactory;
}
}
That's it so when your application starts so at the time of context initialization it will create your table whatever mentioned in hibernate.cfg.xml file.
Comments
Post a Comment