Example usage for org.hibernate.cfg Configuration buildSessionFactory

List of usage examples for org.hibernate.cfg Configuration buildSessionFactory

Introduction

In this page you can find the example usage for org.hibernate.cfg Configuration buildSessionFactory.

Prototype

public SessionFactory buildSessionFactory() throws HibernateException 

Source Link

Document

Create a SessionFactory using the properties and mappings in this configuration.

Usage

From source file:com.manydesigns.portofino.persistence.Persistence.java

License:Open Source License

public synchronized void initModel() {
    if (setups != null) {
        logger.info("Cleaning up old setups");
        for (Map.Entry<String, HibernateDatabaseSetup> current : setups.entrySet()) {
            String databaseName = current.getKey();
            logger.info("Cleaning up old setup for: {}", databaseName);
            HibernateDatabaseSetup hibernateDatabaseSetup = current.getValue();
            try {
                SessionFactory sessionFactory = hibernateDatabaseSetup.getSessionFactory();
                sessionFactory.close();//  w  w  w.j  a  va 2 s  .  c  om
            } catch (Throwable t) {
                logger.warn("Cannot close session factory for: " + databaseName, t);
            }
        }
    }

    setups.clear();
    model.init();
    for (Database database : model.getDatabases()) {
        ConnectionProvider connectionProvider = database.getConnectionProvider();
        connectionProvider.init(databasePlatformsRegistry);
        if (connectionProvider.getStatus().equals(ConnectionProvider.STATUS_CONNECTED)) {
            HibernateConfig builder = new HibernateConfig(connectionProvider, configuration);
            String trueString = database.getTrueString();
            if (trueString != null) {
                builder.setTrueString("null".equalsIgnoreCase(trueString) ? null : trueString);
            }
            String falseString = database.getFalseString();
            if (falseString != null) {
                builder.setFalseString("null".equalsIgnoreCase(falseString) ? null : falseString);
            }
            Configuration configuration = builder.buildSessionFactory(database);
            SessionFactory sessionFactory = configuration.buildSessionFactory();

            HibernateDatabaseSetup setup = new HibernateDatabaseSetup(configuration, sessionFactory);
            String databaseName = database.getDatabaseName();
            setups.put(databaseName, setup);
        }
    }

    cacheResetListenerRegistry.fireReset(new CacheResetEvent(this));
}

From source file:com.medigy.persist.util.HibernateUtil.java

License:Open Source License

public static void setConfiguration(Configuration cfg) throws HibernateException {
    try {/*from   w ww  . ja va 2 s . c o m*/
        if (sessionFactory != null) {
            connectionProvider.close();
            sessionFactory.close();
        }
        sessionFactory = cfg.buildSessionFactory();
        connectionProvider = ConnectionProviderFactory.newConnectionProvider(cfg.getProperties());
    } catch (MappingException e) {
        throw e;
    }
}

From source file:com.medigy.tool.persist.loader.EntityLoaderTask.java

License:Open Source License

public void execute() throws BuildException {
    if (hibernateConfigClass == null)
        throw new BuildException("hibernateConfigClass was not provided.");

    if (url == null || driver == null || userid == null || password == null)
        throw new BuildException("url, driver, userid, and password are required attributes.");

    if (file == null && resource == null)
        throw new BuildException("Either a file or resource name should be provided.");

    final Configuration configuration;
    try {/* w  ww  .  ja va 2  s .  co m*/
        configuration = (Configuration) hibernateConfigClass.newInstance();
        if (hibernateConfigFile != null)
            configuration.configure(hibernateConfigFile);

        if (dialect != null)
            configuration.setProperty(Environment.DIALECT, dialect);

        configuration.setProperty(Environment.DRIVER, driver);
        configuration.setProperty(Environment.URL, url);
        configuration.setProperty(Environment.USER, userid);
        configuration.setProperty(Environment.PASS, password);
        configuration.setProperty(Environment.SHOW_SQL, Boolean.toString(showSql));
    } catch (final Exception e) {
        throw new BuildException(e);
    }

    log("Using Hibernate Configuration " + configuration.getClass());
    log("Using Driver " + configuration.getProperty(Environment.DRIVER));
    log("Using Dialect " + configuration.getProperty(Environment.DIALECT));
    log("Using URL " + configuration.getProperty(Environment.URL));
    log("Using User ID " + configuration.getProperty(Environment.USER));
    log("Showing SQL " + configuration.getProperty(Environment.SHOW_SQL));

    final SessionFactory sessionFactory = configuration.buildSessionFactory();
    Session session = sessionFactory.openSession();

    final Transaction tx = session.beginTransaction();
    try {
        tx.commit();
        log("Committed model initialization (seed data).");
    } catch (Exception e) {
        tx.rollback();
        log("Rolled back model initialization (seed data).");
        throw new BuildException(e);
    } finally {
        session.close();
    }

    session = sessionFactory.openSession();
    try {
        // these reference entities might need to refer to "cached" lookup items also
        loadData(session);
    } catch (final Exception e) {
        e.printStackTrace();
        throw new BuildException(e);
    } finally {
        session.close();
    }
}

From source file:com.medigy.tool.persist.populate.DataPopulatorTask.java

License:Open Source License

public void execute() throws BuildException {
    if (hibernateConfigClass == null)
        throw new BuildException("hibernateConfigClass was not provided.");

    if (url == null || driver == null || userid == null || password == null)
        throw new BuildException("url, driver, userid, and password are required attributes.");

    final Configuration configuration;
    try {/*from  ww  w  .  j a va  2 s. co m*/
        configuration = (Configuration) hibernateConfigClass.newInstance();
        if (hibernateConfigFile != null)
            configuration.configure(hibernateConfigFile);

        if (dialect != null)
            configuration.setProperty(Environment.DIALECT, dialect);

        configuration.setProperty(Environment.DRIVER, driver);
        configuration.setProperty(Environment.URL, url);
        configuration.setProperty(Environment.USER, userid);
        configuration.setProperty(Environment.PASS, password);

        if (showSql)
            configuration.setProperty(Environment.SHOW_SQL, "true");
    } catch (final Exception e) {
        throw new BuildException(e);
    }

    log("Using Hibernate Configuration " + configuration.getClass());
    log("Using Driver " + configuration.getProperty(Environment.DRIVER));
    log("Using Dialect " + configuration.getProperty(Environment.DIALECT));
    log("Using URL " + configuration.getProperty(Environment.URL));
    log("Using User ID " + configuration.getProperty(Environment.USER));
    log("Showing SQL " + configuration.getProperty(Environment.SHOW_SQL));

    final SessionFactory sessionFactory = configuration.buildSessionFactory();
    final Session session = sessionFactory.openSession();
    try {
        // initialize the model and make sure to popuplate seed data if it's necessary
        final Transaction tx = session.beginTransaction();
        try {
            HibernateModelInitializer.getInstance().initialize(session,
                    AbstractModelInitializer.SeedDataPopulationType.AUTO, configuration);
            tx.commit();
            log("Committed model initialization (seed data).");
        } catch (Exception e) {
            tx.rollback();
            log("Rolled back model initialization (seed data).");
            throw new BuildException(e);
        }

        dataGeneratorSources = new DataGeneratorSources();
        populateData(session);
    } catch (final Exception e) {
        throw new BuildException(e);
    } finally {
        session.close();
    }
}

From source file:com.mercatis.lighthouse3.service.commons.rest.HibernateDomainModelEntityRestServiceContainer.java

License:Apache License

@Override
protected synchronized void configure(Map<String, String> initParams, ResourceConfig rc, WebApplication wa) {
    super.configure(initParams, rc, wa);

    if (sessionFactory == null) {
        Configuration hibernateConfiguration = getHibernateConfiguration();
        sessionFactory = hibernateConfiguration.buildSessionFactory();
        if (log.isDebugEnabled()) {
            log.debug("Creating new Hibernate Session Factory.");
        }//from   w ww  .  j a v  a2 s  .c o  m
    } else {
        if (log.isDebugEnabled()) {
            log.debug("Using already established Hibernate Session Factory.");
        }
    }

    unitOfWork = new UnitOfWorkImplementation();
    unitOfWork.setSessionFactory(getSessionFactory());
}

From source file:com.mg.jet.birt.report.data.oda.ejbql.HibernateUtil.java

License:Open Source License

private static synchronized void initSessionFactory(String hibfile, String mapdir, String jndiName)
        throws HibernateException {
    //ClassLoader cl1;

    if (sessionFactory == null) {

        if (jndiName == null || jndiName.trim().length() == 0)
            jndiName = CommonConstant.DEFAULT_JNDI_URL;
        Context initCtx = null;//from  ww w  .  ja va2 s .  c  om
        try {
            initCtx = new InitialContext();
            sessionFactory = (SessionFactory) initCtx.lookup(jndiName);
            return;
        } catch (Exception e) {
            logger.log(Level.INFO, "Unable to get JNDI data source connection", e);
        } finally {
            if (initCtx != null)
                try {
                    initCtx.close();
                } catch (NamingException e) {
                    //ignore
                }
        }

        Thread thread = Thread.currentThread();
        try {
            //Class.forName("org.hibernate.Configuration");
            //Configuration ffff = new Configuration();
            //Class.forName("org.apache.commons.logging.LogFactory");

            oldloader = thread.getContextClassLoader();
            //Class thwy = oldloader.loadClass("org.hibernate.cfg.Configuration");
            //Class thwy2 = oldloader.loadClass("org.apache.commons.logging.LogFactory");
            //refreshURLs();
            //ClassLoader changeLoader = new URLClassLoader( (URL [])URLList.toArray(new URL[0]),HibernateUtil.class.getClassLoader());
            ClassLoader testLoader = new URLClassLoader((URL[]) URLList.toArray(new URL[0]), pluginLoader);
            //changeLoader = new URLClassLoader( (URL [])URLList.toArray(new URL[0]));

            thread.setContextClassLoader(testLoader);
            //Class thwy2 = changeLoader.loadClass("org.hibernate.cfg.Configuration");
            //Class.forName("org.apache.commons.logging.LogFactory", true, changeLoader);
            //Class cls = Class.forName("org.hibernate.cfg.Configuration", true, changeLoader);
            //Configuration cfg=null;
            //cfg = new Configuration();
            //Object oo = cls.newInstance();
            //Configuration cfg = (Configuration)oo;
            Configuration cfg = new Configuration();
            buildConfig(hibfile, mapdir, cfg);

            Class<? extends Driver> driverClass = testLoader
                    .loadClass(cfg.getProperty("connection.driver_class")).asSubclass(Driver.class);
            Driver driver = driverClass.newInstance();
            WrappedDriver wd = new WrappedDriver(driver, cfg.getProperty("connection.driver_class"));

            boolean foundDriver = false;
            Enumeration<Driver> drivers = DriverManager.getDrivers();
            while (drivers.hasMoreElements()) {
                Driver nextDriver = (Driver) drivers.nextElement();
                if (nextDriver.getClass() == wd.getClass()) {
                    if (nextDriver.toString().equals(wd.toString())) {
                        foundDriver = true;
                        break;
                    }
                }
            }
            if (!foundDriver) {

                DriverManager.registerDriver(wd);
            }

            sessionFactory = cfg.buildSessionFactory();
            //configuration = cfg;
            HibernateMapDirectory = mapdir;
            HibernateConfigFile = hibfile;
        } catch (Throwable e) {
            e.printStackTrace();
            throw new HibernateException("No Session Factory Created " + e.getLocalizedMessage(), e);
        } finally {
            thread.setContextClassLoader(oldloader);
        }
    }
}

From source file:com.mitocode.spring23.Test1.java

public static void main(String[] args) {

    System.out.println("Se esta configurando la conexion y mapeo...");
    Configuration cfg = new Configuration();
    cfg.configure("com/mitocode/xml/hibernate.cfg.xml");

    System.out.println("Se creara el objeto creador de sesion...");
    SessionFactory sessionfactory = cfg.buildSessionFactory();

    System.out.println("Se crea una session para persistir..");
    Session session = sessionfactory.openSession();

    System.out.println("Se crea el objeto de transaccion...");
    Transaction tr = session.beginTransaction();

    System.out.println("Creamos el objeto a persistir...");
    //Usuario unUsuario= new Usuario("daysy", "Cruz", "kobebryant");
    //User user= new User("papa", "Cruz", "kobebryant","victim", 62, 3);

    System.out.println("guardamos el objeto...");
    //session.save(unUsuario);
    //session.save(user);

    //Recover/*from  w  w  w.  j  ava  2s.  c  o m*/
    //List<Usuario> personList= session.createCriteria(Usuario.class).list();
    //System.out.println(personList);

    List<User> lista = session.createCriteria(User.class).list();

    for (User u : lista) {
        System.out.println(u.getId() + " " + u.getName());

    }

    System.out.println("Cerramos la transaccion...");
    tr.commit();

}

From source file:com.model.database.GtfsDatabaseLoaderMain.java

License:Apache License

private void run(String[] args) throws IOException {
    CommandLine cli = parseCommandLineOptions(args);

    args = cli.getArgs();/*from  w ww  . ja va 2  s.c  o m*/
    if (args.length != 1) {
        printUsage();
        System.exit(-1);
    }

    Configuration config = new Configuration();
    config.setProperty("hibernate.connection.driver_class", cli.getOptionValue(ARG_DRIVER_CLASS));
    config.setProperty("hibernate.connection.url", cli.getOptionValue(ARG_URL));
    if (cli.hasOption(ARG_USERNAME)) {
        config.setProperty("hibernate.connection.username", cli.getOptionValue(ARG_USERNAME));
    }
    if (cli.hasOption(ARG_PASSWORD)) {
        config.setProperty("hibernate.connection.password", cli.getOptionValue(ARG_PASSWORD));
    }
    config.setProperty("hibernate.connection.pool_size", "1");
    config.setProperty("hibernate.cache.provider_class", "org.hibernate.cache.NoCacheProvider");
    config.setProperty("hibernate.hbm2ddl.auto", "update");
    config.addResource("com/model/database/connections/transit/mapping/GtfsMapping.hibernate.xml");
    config.addResource(
            "com/model/database/connections/transit/mapping/HibernateGtfsRelationalDaoImpl.hibernate.xml");

    SessionFactory sessionFactory = config.buildSessionFactory();
    HibernateGtfsFactory factory = new HibernateGtfsFactory(sessionFactory);

    GtfsReader reader = new GtfsReader();
    reader.setInputLocation(new File(args[0]));

    GtfsMutableRelationalDao dao = factory.getDao();
    reader.setEntityStore(dao);
    try {
        reader.run();
    } catch (Exception e) {
        DbUpdate.gtfsMessage = e.getMessage();
        DbUpdate.gtfsUpload = true;
    } finally {
        reader.close();
        sessionFactory.close();
    }
}

From source file:com.model.database.onebusaway.gtfs.hibernate.ext.GtfsHibernateReaderExampleMain.java

License:Apache License

private static HibernateGtfsFactory createHibernateGtfsFactory(String resource, int k) {

    Configuration config = new Configuration();

    if (resource.startsWith(KEY_CLASSPATH)) {
        resource = resource.substring(KEY_CLASSPATH.length());
        config = config.configure(resource);
    } else if (resource.startsWith(KEY_FILE)) {
        resource = resource.substring(KEY_FILE.length());
        config = config.configure(new File(resource));
    } else {//from  w ww .  java 2s  . c o m
        config = config.configure(new File(resource));
    }

    SessionFactory sessionFactory = config.buildSessionFactory();
    sessions[k] = sessionFactory;
    return new HibernateGtfsFactory(sessionFactory);
}

From source file:com.money.java

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    response.setContentType("text/html;charset=UTF-8");

    HttpSession session = request.getSession(true);
    try {/*  www .j  a v a  2  s  .c  om*/

        Configuration cfg = new Configuration();
        cfg.configure("hibernate.cfg.xml");//populates the data of the configuration file  
        SessionFactory factory = cfg.buildSessionFactory();
        Session session1 = factory.openSession();
        Transaction t = session1.beginTransaction();

        int money = Integer.parseInt(request.getParameter("money"));
        int m = 0;
        int price;
        String UEmail = (String) session.getAttribute("email");
        price = (Integer) session.getAttribute("price");
        session.removeAttribute("price");
        m = price + money;
        session.setAttribute("price", m);
        session1.createSQLQuery("UPDATE STOCK.STOCKUSER set MONEY=" + m + "   WHERE EMAIL='" + UEmail + "'")
                .executeUpdate();
        t.commit();
        session1.close();
        request.setAttribute("success", "suc");
        RequestDispatcher rd = request.getRequestDispatcher("DashBoard.jsp");
        rd.forward(request, response);
    }

    catch (Exception e) {
        request.setAttribute("success", "err");
        RequestDispatcher rd = request.getRequestDispatcher("DashBoard.jsp");
        rd.forward(request, response);
    }

}