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(ServiceRegistry serviceRegistry) throws HibernateException 

Source Link

Document

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

Usage

From source file:de.huberlin.hiwaydb.useDB.Reader.java

License:Apache License

private static SessionFactory getSQLSession(String db) {
    try {//  w  ww . j a  va2 s  .  c o m
        Configuration configuration = new Configuration();
        System.out.println("connect to: " + db);

        configuration.setProperty("hibernate.connection.url", "jdbc:mysql://127.0.0.1/" + db);
        configuration.setProperty("hibernate.connection.username", "root");
        configuration.setProperty("hibernate.connection.password", "reverse");
        configuration.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLInnoDBDialect");
        configuration.setProperty("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
        configuration.setProperty("connection.provider_class",
                "org.hibernate.connection.C3P0ConnectionProvider");
        configuration.setProperty("hibernate.transaction.factory_class",
                "org.hibernate.transaction.JDBCTransactionFactory");
        configuration.setProperty("hibernate.current_session_context_class", "thread");
        configuration.setProperty("hibernate.initialPoolSize", "20");
        configuration.setProperty("hibernate.c3p0.min_size", "5");
        configuration.setProperty("hibernate.c3p0.max_size", "1000");
        configuration.setProperty("hibernate.maxIdleTime", "3600");
        configuration.setProperty("hibernate.c3p0.maxIdleTimeExcessConnections", "300");
        configuration.setProperty("hibernate.c3p0.timeout", "330");
        configuration.setProperty("hibernate.c3p0.idle_test_period", "300");
        configuration.setProperty("hibernate.c3p0.max_statements", "13000");
        configuration.setProperty("hibernate.c3p0.maxStatementsPerConnection", "30");
        configuration.setProperty("hibernate.c3p0.acquire_increment", "10");
        configuration.addAnnotatedClass(de.huberlin.hiwaydb.dal.Accesstime.class);

        StandardServiceRegistryBuilder builder = new StandardServiceRegistryBuilder()
                .applySettings(configuration.getProperties());
        SessionFactory sessionFactory = configuration.buildSessionFactory(builder.build());
        return sessionFactory;
    } catch (Throwable ex) {
        System.err.println("Failed to create sessionFactory object." + ex);
        throw new ExceptionInInitializerError(ex);
    }
}

From source file:de.iew.stagediver.fx.database.hibernate.nonosgi.HBPlatformModule.java

License:Apache License

@Provides
public SessionFactory createSessionFactory() {
    if (this.sessionFactory == null) {
        Configuration configuration = new Configuration();
        configuration.configure("hibernate.cfg.xml");
        StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();
        serviceRegistryBuilder.applySettings(configuration.getProperties());

        StandardServiceRegistry serviceRegistry = serviceRegistryBuilder.build();

        this.sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    }/*from   ww  w.  ja  v a 2s. co m*/
    return this.sessionFactory;
}

From source file:de.javakaffee.web.msm.serializer.hibernate.AbstractHibernateCollectionsTest.java

License:Apache License

@BeforeTest
protected void beforeTest() {
    Configuration configuration = new Configuration().addAnnotatedClass(Person.class)
            .addAnnotatedClass(Animal.class).configure();
    StandardServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
            .applySettings(configuration.getProperties()).build();
    _sessionFactory = configuration.buildSessionFactory(serviceRegistry);
}

From source file:de.tudarmstadt.ukp.lmf.transform.LMFDBUtils.java

License:Apache License

public static void dropTables(final DBConfig dbConfig) {
    System.out.println("DROP TABLES");
    Configuration cfg = HibernateConnect.getConfiguration(dbConfig);
    cfg.setProperty("hibernate.hbm2ddl.auto", "none");
    SessionFactory sf = cfg.buildSessionFactory(
            new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry());
    Session session = sf.openSession();//  w  w w .  j a v a 2 s.  c o m
    Transaction tx = session.beginTransaction();
    try {
        // Create a set of all tables.
        Set<String> dropSQL = new TreeSet<String>();
        Iterator<Table> iter = cfg.getTableMappings();
        while (iter.hasNext())
            dropSQL.add("DROP TABLE " + iter.next().getName());

        // Try to delete them repeatedly until no tables are left or 
        // there have been too many repetitions.
        int remainingLoops = dropSQL.size();
        while (!dropSQL.isEmpty() && remainingLoops >= 0) {
            Iterator<String> sqlIter = dropSQL.iterator();
            while (sqlIter.hasNext()) {
                try {
                    String sql = sqlIter.next();
                    session.createSQLQuery(sql).executeUpdate();
                    sqlIter.remove();
                    System.out.println(sql);
                } catch (HibernateException e) {
                }
            }
            remainingLoops--;
        }
    } finally {
        tx.commit();
        session.disconnect();
        session.close();
    }
}

From source file:de.tudarmstadt.ukp.lmf.transform.LMFDBUtils.java

License:Apache License

public static void truncateTables(final DBConfig dbConfig) {
    System.out.println("TRUNCATE TABLES");
    Configuration cfg = HibernateConnect.getConfiguration(dbConfig);
    SessionFactory sf = cfg.buildSessionFactory(
            new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry());
    Session session = sf.openSession();/*  w w  w.  j a  v a  2s  .c o  m*/
    try {
        session.createSQLQuery("SET FOREIGN_KEY_CHECKS=0").executeUpdate();
        Iterator<Table> iter = cfg.getTableMappings();
        while (iter.hasNext())
            session.createSQLQuery("TRUNCATE TABLE " + iter.next().getName()).executeUpdate();
    } finally {
        session.createSQLQuery("SET FOREIGN_KEY_CHECKS=1").executeUpdate();
        session.disconnect();
        session.close();
    }
}

From source file:de.tudarmstadt.ukp.lmf.transform.UBYHibernateTransformer.java

License:Apache License

public UBYHibernateTransformer(final DBConfig dbConfig) {
    super();/*from  w  w  w  .j  a  va2  s  . co m*/
    Configuration cfg = HibernateConnect.getConfiguration(dbConfig);
    sessionFactory = cfg.buildSessionFactory(
            new ServiceRegistryBuilder().applySettings(cfg.getProperties()).buildServiceRegistry());
}

From source file:de.tudarmstadt.ukp.wikipedia.api.hibernate.WikiHibernateUtil.java

License:Apache License

public static SessionFactory getSessionFactory(DatabaseConfiguration config) {

    if (config.getLanguage() == null) {
        throw new ExceptionInInitializerError("Database configuration error. 'Language' is empty.");
    } else if (config.getHost() == null) {
        throw new ExceptionInInitializerError("Database configuration error. 'Host' is empty.");
    } else if (config.getDatabase() == null) {
        throw new ExceptionInInitializerError("Database configuration error. 'Database' is empty.");
    }//from  w  w  w.  j  a va  2s  .  c  o m

    String uniqueSessionKey = config.getLanguage().toString() + config.getHost() + config.getDatabase();
    if (!sessionFactoryMap.containsKey(uniqueSessionKey)) {
        Configuration configuration = getConfiguration(config);
        StandardServiceRegistryBuilder ssrb = new StandardServiceRegistryBuilder()
                .applySettings(configuration.getProperties());
        SessionFactory sessionFactory = configuration.buildSessionFactory(ssrb.build());
        sessionFactoryMap.put(uniqueSessionKey, sessionFactory);
    }
    return sessionFactoryMap.get(uniqueSessionKey);
}

From source file:de.uniwue.info6.database.map.conf.HibernateUtil.java

License:Apache License

/**
 *
 *
 * @return/*from  w w w  .ja  va  2 s . c  o  m*/
 */
private static SessionFactory buildSessionFactory() {
    try {
        Cfg prop = Cfg.inst();

        Configuration hibernate = new Configuration().configure("hibernate.cfg.xml");
        hibernate.setProperty("hibernate.bytecode.use_reflection_optimizer", "false");
        hibernate.setProperty("hibernate.search.autoregister_listeners", "false");
        hibernate.setProperty("hibernate.current_session_context_class", "thread");
        hibernate.setProperty("hibernate.connection.driver_class", "org.mariadb.jdbc.Driver");
        hibernate.setProperty("hibernate.dialect", "org.hibernate.dialect.MySQLInnoDBDialect");

        hibernate.setProperty("hibernate.connection.url",
                "jdbc:mariadb://" + prop.getProp(PropertiesFile.MAIN_CONFIG, PropString.MASTER_DBHOST) + ":"
                        + prop.getProp(PropertiesFile.MAIN_CONFIG, PropString.MASTER_DBPORT)
                        + "?autoReconnect=true");

        hibernate.setProperty("hibernate.default_catalog",
                prop.getProp(PropertiesFile.MAIN_CONFIG, PropString.MASTER_DBNAME));
        hibernate.setProperty("hibernate.connection.username",
                prop.getProp(PropertiesFile.MAIN_CONFIG, PropString.MASTER_DBUSER));
        hibernate.setProperty("hibernate.connection.password",
                prop.getProp(PropertiesFile.MAIN_CONFIG, PropString.MASTER_DBPASS));

        StandardServiceRegistryBuilder serviceRegistryBuilder = new StandardServiceRegistryBuilder();
        serviceRegistryBuilder.applySettings(hibernate.getProperties());
        ServiceRegistry serviceRegistry = serviceRegistryBuilder.build();
        SessionFactory sessionFactory = hibernate.buildSessionFactory(serviceRegistry);

        return sessionFactory;
    } catch (Exception ex) {
        if (LOGGER != null) {
            LOGGER.error("Initial SessionFactory creation failed.", ex);
        }
        throw new ExceptionInInitializerError(ex);
    }
}

From source file:debop4k.data.orm.hibernate.HibernateEx.java

License:Apache License

/**
 * Hibernate {@link Configuration} ? ? {@link SessionFactory} .
 *
 * @param cfg Hibernate /*from w ww  .j  av a  2 s.co  m*/
 * @return {@link SessionFactory} ?
 */
public static SessionFactory buildSessionFactory(@NonNull Configuration cfg) {
    log.info("SessionFactory  .");

    ServiceRegistry registry = new StandardServiceRegistryBuilder().applySettings(cfg.getProperties()).build();

    SessionFactory factory = cfg.buildSessionFactory(registry);

    log.info("SessionFactory  .");
    return factory;
}

From source file:demo.fabric.HibernateFabric.java

License:Open Source License

/**
 * Configuration of session factory with Fabric integration.
 *///w w w . j av a2s  . c  o  m
public static SessionFactory createSessionFactory(String fabricUrl, String username, String password,
        String fabricUser, String fabricPassword) throws Exception {
    // creating this here allows passing needed params to the constructor
    FabricMultiTenantConnectionProvider connProvider = new FabricMultiTenantConnectionProvider(fabricUrl,
            "employees", "employees", username, password, fabricUser, fabricPassword);
    ServiceRegistryBuilder srb = new ServiceRegistryBuilder();
    srb.addService(org.hibernate.service.jdbc.connections.spi.MultiTenantConnectionProvider.class,
            connProvider);
    srb.applySetting("hibernate.dialect", "org.hibernate.dialect.MySQLInnoDBDialect");

    Configuration config = new Configuration();
    config.setProperty("hibernate.multiTenancy", "DATABASE");
    config.addResource("com/mysql/fabric/demo/employee.hbm.xml");
    return config.buildSessionFactory(srb.buildServiceRegistry());
}