Example usage for org.hibernate.cfg Configuration getProperty

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

Introduction

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

Prototype

public String getProperty(String propertyName) 

Source Link

Document

Get a property value by name

Usage

From source file:au.edu.anu.metadatastores.harvester.HarvesterHibernateUtil.java

License:Open Source License

/**
 * Build the sesion factory//from   w w w.  j  a v a2 s  .c  o m
 * 
 * @return The session factory
 */
private static SessionFactory buildSessionFactory() {
    try {
        Configuration configuration = new Configuration();
        configuration.configure("/harvester.cfg.xml");

        //Provide for having an encrypted password
        String password = configuration.getProperty("hibernate.connection.password");
        String decryptedValue = EncryptUtil.decrypt(password);
        configuration.setProperty("hibernate.connection.password", decryptedValue);

        ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder()
                .applySettings(configuration.getProperties());

        return configuration.buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());
    } catch (Exception e) {
        LOGGER.error("Initial SessionFactory creation failed.", e);
        throw new ExceptionInInitializerError(e);
    }
}

From source file:au.edu.anu.metadatastores.services.aries.AriesHibernateUtil.java

License:Open Source License

/**
 * Create the session factory/*  w w w  .j a  v  a2  s.c om*/
 * 
 * @return The session factory
 */
private static SessionFactory buildSessionFactory() {
    try {
        Configuration configuration = new Configuration();
        configuration.configure("/aries.cfg.xml");

        //Provide for having an encrypted password
        String password = configuration.getProperty("hibernate.connection.password");
        if (password != null) {
            String decryptedValue = EncryptUtil.decrypt(password);
            configuration.setProperty("hibernate.connection.password", decryptedValue);
        }

        ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder()
                .applySettings(configuration.getProperties());

        return configuration.buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());
    } catch (Exception e) {
        LOGGER.error("Initial SessionFactory creation failed.", e);
        throw new ExceptionInInitializerError(e);
    }
}

From source file:au.edu.anu.metadatastores.services.store.StoreHibernateUtil.java

License:Open Source License

/**
 * Create the session factory/*from  w ww  .j a  v a 2  s  . c o  m*/
 * 
 * @return The session factory
 */
private static SessionFactory buildSessionFactory() {
    try {
        Configuration configuration = new Configuration();
        configuration.configure("/store.cfg.xml");

        //Provide for having an encrypted password
        String password = configuration.getProperty("hibernate.connection.password");
        String decryptedValue = EncryptUtil.decrypt(password);
        configuration.setProperty("hibernate.connection.password", decryptedValue);
        ServiceRegistryBuilder serviceRegistryBuilder = new ServiceRegistryBuilder()
                .applySettings(configuration.getProperties());
        return configuration.buildSessionFactory(serviceRegistryBuilder.buildServiceRegistry());
    } catch (Exception e) {
        LOGGER.error("Initial SessionFactory creation failed.", e);
        throw new ExceptionInInitializerError(e);
    }
}

From source file:ca.myewb.frame.HibernateUtil.java

License:Open Source License

public static Configuration getConfiguration(String suffix) throws IOException {
    Configuration config = new Configuration();
    config = config.configure();//from  w ww  .j  a  v a2 s  .c  om

    Properties appProperties = new Properties();
    java.net.URL url = Thread.currentThread().getContextClassLoader().getResource("app.properties");
    InputStream stream = url.openStream();
    appProperties.load(stream);

    //here we 'add in' the database name, user, password from the application properties file
    String connString = config.getProperty("hibernate.connection.url") + appProperties.getProperty("dbprefix")
            + suffix;
    config.setProperty("hibernate.connection.url", connString);
    config.setProperty("hibernate.connection.username", appProperties.getProperty("dbuser"));
    config.setProperty("hibernate.connection.password", appProperties.getProperty("dbpass"));
    return config;
}

From source file:com.flipkart.flux.guice.module.HibernateModule.java

License:Apache License

private Configuration getConfiguration(YamlConfiguration yamlConfiguration, String prefix) {
    Configuration configuration = new Configuration();
    addAnnotatedClassesAndTypes(configuration);
    org.apache.commons.configuration.Configuration hibernateConfig = yamlConfiguration.subset(prefix);
    Iterator<String> propertyKeys = hibernateConfig.getKeys();
    Properties configProperties = new Properties();
    while (propertyKeys.hasNext()) {
        String propertyKey = propertyKeys.next();
        Object propertyValue = hibernateConfig.getProperty(propertyKey);
        configProperties.put(propertyKey, propertyValue);
    }//  ww w . j  a  v  a2s .  c  om
    configuration.addProperties(configProperties);
    return configuration;
}

From source file:com.flipkart.flux.redriver.boot.RedriverModule.java

License:Apache License

/**
 * Creates hibernate configuration from the configuration yaml properties.
 * Since the yaml properties are already flattened in input param <code>yamlConfiguration</code>
 * the method loops over them to selectively pick Hibernate specific properties.
 *///from www  .j  a va 2s.c om
@Provides
@Singleton
@Named("redriverHibernateConfiguration")
public Configuration getConfiguration(YamlConfiguration yamlConfiguration) {
    Configuration configuration = new Configuration();
    addAnnotatedClassesAndTypes(configuration);
    org.apache.commons.configuration.Configuration hibernateConfig = yamlConfiguration
            .subset(FLUX_REDRIVER_HIBERNATE_CONFIG_NAME_SPACE);
    Iterator<String> propertyKeys = hibernateConfig.getKeys();
    Properties configProperties = new Properties();
    while (propertyKeys.hasNext()) {
        String propertyKey = propertyKeys.next();
        Object propertyValue = hibernateConfig.getProperty(propertyKey);
        configProperties.put(propertyKey, propertyValue);
    }
    configuration.addProperties(configProperties);
    return configuration;
}

From source file:com.forsrc.utils.ExportDb.java

License:Apache License

/**
 * Init./*  ww w.  j a  v  a  2 s  . c o m*/
 */
public static void init() {
    Configuration cfg = new Configuration().configure();
    String isInit = cfg.getProperty("isInitDb");
    if (isInit == null || !"true".equals(isInit)) {
        return;
    }
    //4.x
    //SchemaExport export = new SchemaExport(cfg);
    //export.create(true, false);
    //ServiceRegistry serviceRegistry = new ServiceRegistryBuilder()
    //.applySettings(cfg.getProperties()).buildServiceRegistry();
    //SessionFactory sessionFactory = cfg.buildSessionFactory(serviceRegistry);
    ServiceRegistry serviceRegistry = null;
    try {
        //5.x
        serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
        MetadataImplementor metadata = (MetadataImplementor) new MetadataSources(serviceRegistry)
                .buildMetadata();
        SchemaExport export = new SchemaExport(serviceRegistry, metadata);
        export.create(true, false);
        StandardServiceRegistryBuilder.destroy(serviceRegistry);
    } catch (Exception e) {
        e.printStackTrace();
        //LogUtils.LOGGER.error(e.getMessage(), e);
    } finally {
        if (serviceRegistry != null) {
            StandardServiceRegistryBuilder.destroy(serviceRegistry);
            serviceRegistry = null;
        }
    }
    Session session = null;
    try {
        //ServiceRegistry serviceRegistry =  new StandardServiceRegistryBuilder().configure().build();
        //SessionFactory sessionFactory = new MetadataSources(serviceRegistry).buildMetadata()
        //.buildSessionFactory();
        //SessionFactory sessionFactory = HibernateSessionFactory.getSessionFactory();
        serviceRegistry = new StandardServiceRegistryBuilder().configure().build();
        SessionFactory sessionFactory = new MetadataSources(serviceRegistry).buildMetadata()
                .buildSessionFactory();
        session = sessionFactory.openSession();

        executeNamedQuery(session, "sql_user_insert_admin");
        executeNamedQuery(session, "sql_book_category_insert_init");
        executeNamedQuery(session, "sql_book_insert_init");
    } catch (Exception e) {
        e.printStackTrace();
        //LogUtils.LOGGER.error(e.getMessage(), e);
    } finally {
        if (serviceRegistry != null) {
            StandardServiceRegistryBuilder.destroy(serviceRegistry);
            serviceRegistry = null;
        }
    }
}

From source file:com.ikon.dao.HibernateUtil.java

License:Open Source License

/**
 * Get instance/*ww  w.  j  a va2  s  . c  o m*/
 */
public static SessionFactory getSessionFactory(String hbm2ddl) {
    if (sessionFactory == null) {
        try {
            // Configure Hibernate
            Configuration cfg = getConfiguration().configure();
            cfg.setProperty("hibernate.dialect", Config.HIBERNATE_DIALECT);
            cfg.setProperty("hibernate.connection.datasource", Config.HIBERNATE_DATASOURCE);
            cfg.setProperty("hibernate.hbm2ddl.auto", hbm2ddl);
            cfg.setProperty("hibernate.show_sql", Config.HIBERNATE_SHOW_SQL);
            cfg.setProperty("hibernate.generate_statistics", Config.HIBERNATE_STATISTICS);
            cfg.setProperty("hibernate.search.analyzer", Config.HIBERNATE_SEARCH_ANALYZER);
            cfg.setProperty("hibernate.search.default.directory_provider",
                    "org.hibernate.search.store.FSDirectoryProvider");
            cfg.setProperty("hibernate.search.default.indexBase", Config.HIBERNATE_SEARCH_INDEX_HOME);
            cfg.setProperty("hibernate.search.default.optimizer.operation_limit.max", "500");
            cfg.setProperty("hibernate.search.default.optimizer.transaction_limit.max", "75");
            cfg.setProperty("hibernate.worker.execution", "async");

            // http://relation.to/Bloggers/PostgreSQLAndBLOBs
            // cfg.setProperty("hibernate.jdbc.use_streams_for_binary", "false");

            // Show configuration
            log.info("Hibernate 'hibernate.dialect' = {}", cfg.getProperty("hibernate.dialect"));
            log.info("Hibernate 'hibernate.connection.datasource' = {}",
                    cfg.getProperty("hibernate.connection.datasource"));
            log.info("Hibernate 'hibernate.hbm2ddl.auto' = {}", cfg.getProperty("hibernate.hbm2ddl.auto"));
            log.info("Hibernate 'hibernate.show_sql' = {}", cfg.getProperty("hibernate.show_sql"));
            log.info("Hibernate 'hibernate.generate_statistics' = {}",
                    cfg.getProperty("hibernate.generate_statistics"));
            log.info("Hibernate 'hibernate.search.default.directory_provider' = {}",
                    cfg.getProperty("hibernate.search.default.directory_provider"));
            log.info("Hibernate 'hibernate.search.default.indexBase' = {}",
                    cfg.getProperty("hibernate.search.default.indexBase"));

            if (HBM2DDL_CREATE.equals(hbm2ddl)) {
                // In case of database schema creation, also clean filesystem data.
                // This means, conversion cache, file datastore and Lucene indexes. 
                log.info("Cleaning filesystem data from: {}", Config.REPOSITORY_HOME);
                FileUtils.deleteQuietly(new File(Config.REPOSITORY_HOME));
            }

            // Create database schema, if needed
            sessionFactory = cfg.buildSessionFactory();

            if (HBM2DDL_CREATE.equals(hbm2ddl)) {
                log.info("Executing specific import for: {}", Config.HIBERNATE_DIALECT);
                InputStream is = ConfigUtils.getResourceAsStream("default.sql");
                String adapted = DatabaseDialectAdapter.dialectAdapter(is, Config.HIBERNATE_DIALECT);
                executeImport(new StringReader(adapted));
                IOUtils.closeQuietly(is);
            }

            if (HBM2DDL_CREATE.equals(hbm2ddl) || HBM2DDL_UPDATE.equals(hbm2ddl)) {
                // Create or update translations
                for (String res : ConfigUtils.getResources("i18n")) {
                    String oldTrans = null;
                    String langId = null;

                    // Preserve translation changes
                    if (HBM2DDL_UPDATE.equals(hbm2ddl)) {
                        langId = FileUtils.getFileName(res);
                        log.info("Preserving translations for: {}", langId);
                        oldTrans = preserveTranslations(langId);
                    }

                    InputStream isLang = ConfigUtils.getResourceAsStream("i18n/" + res);
                    log.info("Importing translation: {}", res);
                    executeImport(new InputStreamReader(isLang));
                    IOUtils.closeQuietly(isLang);

                    // Apply previous translation changes
                    if (HBM2DDL_UPDATE.equals(hbm2ddl)) {
                        if (oldTrans != null) {
                            log.info("Restoring translations for: {}", langId);
                            executeImport(new StringReader(oldTrans));
                        }
                    }
                }

                // Replace "create" or "update" by "none" to prevent repository reset on restart
                if (Boolean.parseBoolean(Config.HIBERNATE_CREATE_AUTOFIX)) {
                    log.info("Executing Hibernate create autofix");
                    hibernateCreateAutofix(Config.HOME_DIR + "/" + Config.ikon_CONFIG);
                } else {
                    log.info("Hibernate create autofix not executed because of {}={}",
                            Config.PROPERTY_HIBERNATE_CREATE_AUTOFIX, Config.HIBERNATE_CREATE_AUTOFIX);
                }
            }
        } catch (HibernateException e) {
            log.error(e.getMessage(), e);
            throw new ExceptionInInitializerError(e);
        } catch (URISyntaxException e) {
            log.error(e.getMessage(), e);
            throw new ExceptionInInitializerError(e);
        } catch (IOException e) {
            log.error(e.getMessage(), e);
            throw new ExceptionInInitializerError(e);
        }
    }

    return sessionFactory;
}

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 {//from w  w  w  .  ja v  a  2s.  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 .ja  va2s  . c  o 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();
    }
}