Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- return new Configuration().configure().buildSessionFactory();
- <?xml version='1.0' encoding='utf-8'?>
- <!DOCTYPE hibernate-configuration PUBLIC
- "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
- <hibernate-configuration>
- <session-factory>
- <!-- Database connection settings -->
- <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
- <property name="connection.url">jdbc:mysql://localhost:3306/racingleague</property>
- <property name="connection.username">username</property>
- <property name="connection.password">password</property>
- <property name="hibernate.format_sql">true</property>
- <!-- JDBC connection pool (use the built-in) -->
- <property name="connection.pool_size">1</property>
- <!-- SQL dialect -->
- <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
- <!-- Enable Hibernate's automatic session context management -->
- <property name="current_session_context_class">thread</property>
- <!-- Disable the second-level cache -->
- <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
- <!-- Echo all executed SQL to stdout -->
- <property name="hibernate.show_sql">true</property>
- <!-- Drop and re-create the database schema on startup -->
- <property name="hibernate.hbm2ddl.auto">update</property>
- <!--property name="hbm2ddl.auto">update</property-->
- <mapping resource="com/jr/model/hibernateMappings/user.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
- package com.jr.utils;
- import org.hibernate.SessionFactory;
- import org.hibernate.cfg.Configuration;
- public class HibernateUtils {
- private static final SessionFactory sessionFactory = buildSessionFactory();
- public static SessionFactory buildSessionFactory() {
- try {
- // Create the SessionFactory from hibernate.cfg.xml
- return new Configuration().configure().buildSessionFactory();
- }
- catch (Throwable ex) {
- // Make sure you log the exception, as it might be swallowed
- System.err.println("Initial SessionFactory creation failed." + ex);
- throw new ExceptionInInitializerError(ex);
- }
- }
- }
- package com.jr.db;
- import org.hibernate.SessionFactory;
- import org.hibernate.classic.Session;
- import com.jr.utils.HibernateUtils;
- public abstract class DbWrapper<T> {
- private static SessionFactory sessionFactory = null;
- private static Session session;
- public DbWrapper() {
- setSessionFactory();
- }
- private void setSessionFactory() {
- sessionFactory = HibernateUtils.buildSessionFactory();
- session = sessionFactory.getCurrentSession();
- }
- public boolean addNewItem(T dbItem) {
- try {
- session.getTransaction().begin();
- session.save(dbItem);
- session.getTransaction().commit();
- } catch (Exception e) {
- System.err.println("error exception when adding new item to table"
- + e);
- } finally {
- session.close();
- sessionFactory.close();
- }
- return false;
- }
- public abstract boolean removeItem(String uid);
- public abstract boolean modifyItem(String uid, T item);
- }
- private Logger logger = Logger.getLogger(UserController.class);
- private UserDb userDb;
- @RequestMapping(value = "/user/registerSuccess", method = RequestMethod.POST)
- public String submitRegisterForm(@Valid User user, BindingResult result) {
- // validate the data recieved from user
- logger.info("validate the data recieved from user");
- if (result.hasErrors()) {
- logger.info("form has "+result.getErrorCount()+" errors");
- return "account/createForm";
- } else{
- // if everthings ok, add user details to database
- logger.info("if everthings ok, add user details to database");
- userDb = new UserDb();
- userDb.addNewItem(user);
- // display success and auto log the user to the system.
- return "account/main";
- }
- }
- Configuration con = new Configuration().configure("hibernate.cfg.xml");
Add Comment
Please, Sign In to add comment