org.hibernate.cfg.Configuration#setProperties ( )源码实例Demo

下面列出了org.hibernate.cfg.Configuration#setProperties ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: tutorials   文件: NamingStrategyLiveTest.java
@Before
public void init() {
    try {
        Configuration configuration = new Configuration();

        Properties properties = new Properties();
        properties.load(Thread.currentThread()
            .getContextClassLoader()
            .getResourceAsStream("hibernate-namingstrategy.properties"));

        configuration.setProperties(properties);

        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties())
            .build();
        MetadataSources metadataSources = new MetadataSources(serviceRegistry);
        metadataSources.addAnnotatedClass(Customer.class);

        SessionFactory factory = metadataSources.buildMetadata()
            .buildSessionFactory();

        session = factory.openSession();
    } catch (HibernateException | IOException e) {
        fail("Failed to initiate Hibernate Session [Exception:" + e.toString() + "]");
    }
}
 
源代码2 项目: yeti   文件: HibernateUtil.java
private static SessionFactory buildSessionAnnotationFactory() {
    try {
        Properties dbProps = ConfigSettings.getDatabaseProperties();
        
        Configuration configuration = new Configuration();
        configuration.setProperties(dbProps);
        configuration.configure("hibernate-annotation.cfg.xml");

        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();

        sessionFactory = configuration.buildSessionFactory(serviceRegistry);

        return sessionFactory;
    } catch (HibernateException ex) {
        Logger.getLogger(HibernateUtil.class.getName()).log(Level.SEVERE, null, ex);
        throw new ExceptionInInitializerError(ex);
    }
}
 
源代码3 项目: tutorials   文件: HibernateUtil.java
public static SessionFactory getSessionFactory() {
    if (sessionFactory == null) {
        try {
            Configuration configuration = new Configuration();
            Properties settings = new Properties();
            settings.put(Environment.DRIVER, "org.hsqldb.jdbcDriver");
            settings.put(Environment.URL, "jdbc:hsqldb:mem:userrole");
            settings.put(Environment.USER, "sa");
            settings.put(Environment.PASS, "");
            settings.put(Environment.DIALECT, "org.hibernate.dialect.HSQLDialect");
            settings.put(Environment.SHOW_SQL, "true");
            settings.put(Environment.HBM2DDL_AUTO, "update");
            configuration.setProperties(settings);
            configuration.addAnnotatedClass(User.class);
            configuration.addAnnotatedClass(Role.class);

            ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
                    .applySettings(configuration.getProperties()).build();
            sessionFactory = configuration.buildSessionFactory(serviceRegistry);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    return sessionFactory;
}
 
源代码4 项目: tutorials   文件: HibernateUtil.java
public static SessionFactory getSessionFactory() {
    try {
        Properties properties = getProperties();
        Configuration configuration = new Configuration();
        configuration.setProperties(properties);
        configuration.addAnnotatedClass(Person.class);
        configuration.addAnnotatedClass(Address.class);
        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
                .applySettings(configuration.getProperties()).build();
        sessionFactory = configuration.buildSessionFactory(serviceRegistry);
        return sessionFactory;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return sessionFactory;
}
 
源代码5 项目: tutorials   文件: PersistJSONUnitTest.java
@Before
public void init() {
    try {
        Configuration configuration = new Configuration();

        Properties properties = new Properties();
        properties.load(Thread.currentThread()
            .getContextClassLoader()
            .getResourceAsStream("hibernate-persistjson.properties"));

        configuration.setProperties(properties);

        ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties())
            .build();
        MetadataSources metadataSources = new MetadataSources(serviceRegistry);
        metadataSources.addAnnotatedClass(Customer.class);

        SessionFactory factory = metadataSources.buildMetadata()
            .buildSessionFactory();

        session = factory.openSession();
    } catch (HibernateException | IOException e) {
        fail("Failed to initiate Hibernate Session [Exception:" + e.toString() + "]");
    }
}
 
源代码6 项目: java-11-examples   文件: HibernateUtil.java
public static SessionFactory getSessionFactory(Properties properties) {
    Configuration configuration = new Configuration();

    configuration.setProperties(properties);
    configuration.addAnnotatedClass(UserData.class);
    ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
            .applySettings(configuration.getProperties()).build();
    return configuration.buildSessionFactory(serviceRegistry);
}
 
源代码7 项目: hibernate-types   文件: AbstractTest.java
private SessionFactory newSessionFactory() {
    Properties properties = properties();
    Configuration configuration = new Configuration().addProperties(properties);
    for (Class<?> entityClass : entities()) {
        configuration.addAnnotatedClass(entityClass);
    }
    String[] packages = packages();
    if (packages != null) {
        for (String scannedPackage : packages) {
            configuration.addPackage(scannedPackage);
        }
    }
    String[] resources = resources();
    if (resources != null) {
        for (String resource : resources) {
            configuration.addResource(resource);
        }
    }
    Interceptor interceptor = interceptor();
    if (interceptor != null) {
        configuration.setInterceptor(interceptor);
    }
    configuration.setProperties(properties);
    return configuration.buildSessionFactory(
            new BootstrapServiceRegistryBuilder()
                    .build()
    );
}
 
源代码8 项目: journaldev   文件: HibernateUtil.java
private static SessionFactory buildSessionJavaConfigFactory() {
   	try {
   	Configuration configuration = new Configuration();
	
	//Create Properties, can be read from property files too
	Properties props = new Properties();
	props.put("hibernate.connection.driver_class", "com.mysql.jdbc.Driver");
	props.put("hibernate.connection.url", "jdbc:mysql://localhost/TestDB");
	props.put("hibernate.connection.username", "pankaj");
	props.put("hibernate.connection.password", "pankaj123");
	props.put("hibernate.current_session_context_class", "thread");
	
	configuration.setProperties(props);
	
	//we can set mapping file or class with annotation
	//addClass(Employee1.class) will look for resource
	// com/journaldev/hibernate/model/Employee1.hbm.xml (not good)
	configuration.addAnnotatedClass(Employee1.class);
	
	ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
   	System.out.println("Hibernate Java Config serviceRegistry created");
   	
   	SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
   	
       return sessionFactory;
   	}
       catch (Throwable ex) {
           System.err.println("Initial SessionFactory creation failed." + ex);
           throw new ExceptionInInitializerError(ex);
       }
}
 
源代码9 项目: cacheonix-core   文件: SchemaExportTask.java
private SchemaExport getSchemaExport(Configuration cfg) throws HibernateException, IOException {
	Properties properties = new Properties();
	properties.putAll( cfg.getProperties() );
	if (propertiesFile == null) {
		properties.putAll( getProject().getProperties() );
	}
	else {
		properties.load( new FileInputStream(propertiesFile) );
	}
	cfg.setProperties(properties);
	return new SchemaExport(cfg)
			.setHaltOnError(haltOnError)
			.setOutputFile( outputFile.getPath() )
			.setDelimiter(delimiter);
}
 
源代码10 项目: cacheonix-core   文件: SchemaUpdateTask.java
private SchemaUpdate getSchemaUpdate(Configuration cfg) throws HibernateException, IOException {
	Properties properties = new Properties();
	properties.putAll( cfg.getProperties() );
	if (propertiesFile == null) {
		properties.putAll( getProject().getProperties() );
	}
	else {
		properties.load( new FileInputStream(propertiesFile) );
	}
	cfg.setProperties(properties);
	return new SchemaUpdate(cfg);
}
 
源代码11 项目: cacheonix-core   文件: SchemaValidator.java
public static void main(String[] args) {
	try {
		Configuration cfg = new Configuration();

		String propFile = null;

		for ( int i = 0; i < args.length; i++ ) {
			if ( args[i].startsWith( "--" ) ) {
				if ( args[i].startsWith( "--properties=" ) ) {
					propFile = args[i].substring( 13 );
				}
				else if ( args[i].startsWith( "--config=" ) ) {
					cfg.configure( args[i].substring( 9 ) );
				}
				else if ( args[i].startsWith( "--naming=" ) ) {
					cfg.setNamingStrategy(
							( NamingStrategy ) ReflectHelper.classForName( args[i].substring( 9 ) ).newInstance()
					);
				}
			}
			else {
				cfg.addFile( args[i] );
			}

		}

		if ( propFile != null ) {
			Properties props = new Properties();
			props.putAll( cfg.getProperties() );
			props.load( new FileInputStream( propFile ) );
			cfg.setProperties( props );
		}

		new SchemaValidator( cfg ).validate();
	}
	catch ( Exception e ) {
		log.error( "Error running schema update", e );
		e.printStackTrace();
	}
}
 
源代码12 项目: cacheonix-core   文件: SchemaValidatorTask.java
private SchemaValidator getSchemaValidator(Configuration cfg) throws HibernateException, IOException {
	Properties properties = new Properties();
	properties.putAll( cfg.getProperties() );
	if (propertiesFile == null) {
		properties.putAll( getProject().getProperties() );
	}
	else {
		properties.load( new FileInputStream(propertiesFile) );
	}
	cfg.setProperties(properties);
	return new SchemaValidator(cfg);
}
 
源代码13 项目: spring-data-examples   文件: HibernateUtil.java
public static synchronized SessionFactory getSessionFactory() {
  if (sessionFactory == null) {
    try {
      Configuration configuration = new Configuration();
      Properties settings = new Properties();
      settings.put(Environment.DRIVER, "org.h2.Driver");
      settings.put(Environment.URL, "jdbc:h2:mem:test_mem");
      settings.put(Environment.USER, "sa");
      settings.put(Environment.PASS, "sa");
      settings.put(Environment.DIALECT, "org.hibernate.dialect.H2Dialect");
      settings.put(Environment.SHOW_SQL, "true");
      settings.put(Environment.CURRENT_SESSION_CONTEXT_CLASS, "thread");
      settings.put(Environment.HBM2DDL_AUTO, "create-drop");
      configuration.setProperties(settings);

      configuration.addAnnotatedClass(Category.class);
      configuration.addAnnotatedClass(Author.class);
      configuration.addAnnotatedClass(Book.class);

      ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
          .applySettings(configuration.getProperties()).build();

      sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
  return sessionFactory;
}
 
protected Configuration getConfiguration(Properties prop) {
    Configuration config = new Configuration();
    Properties properties = new Properties();
    properties.putAll(getDefaultProperties());
    if (prop != null) {
        properties.putAll(prop);
    }
    config.setProperties(properties);

    config.addAnnotatedClass(Person.class);
    config.addAnnotatedClass(Contact.class);
    config.addAnnotatedClass(Book.class);

    return config;
}
 
源代码15 项目: monasca-thresh   文件: PersistenceModule.java
@Provides
@Singleton
public SessionFactory sessionFactory() {
  try {
    Configuration configuration = new Configuration();
    configuration.addAnnotatedClass(AlarmDb.class);
    configuration.addAnnotatedClass(AlarmDefinitionDb.class);
    configuration.addAnnotatedClass(AlarmMetricDb.class);
    configuration.addAnnotatedClass(MetricDefinitionDb.class);
    configuration.addAnnotatedClass(MetricDefinitionDimensionsDb.class);
    configuration.addAnnotatedClass(MetricDimensionDb.class);
    configuration.addAnnotatedClass(SubAlarmDefinitionDb.class);
    configuration.addAnnotatedClass(SubAlarmDefinitionDimensionDb.class);
    configuration.addAnnotatedClass(SubAlarmDb.class);
    configuration.addAnnotatedClass(AlarmActionDb.class);
    configuration.addAnnotatedClass(NotificationMethodDb.class);

    // retrieve hikari properties for right driver
    configuration.setProperties(this.getHikariProperties(this.dbConfig.getDriverClass()));

    final ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder()
        .applySettings(configuration.getProperties())
        .build();

    // builds a session factory from the service registry
    return configuration.buildSessionFactory(serviceRegistry);
  } catch (Throwable ex) {
    throw new ProvisionException("Failed to provision Hibernate DB", ex);
  }
}
 
private final SessionFactory configureSessionFactory() throws IOException {
    final Configuration configuration = new Configuration();
    final InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("hibernate-mysql.properties");
    final Properties hibernateProperties = new Properties();
    hibernateProperties.load(inputStream);
    configuration.setProperties(hibernateProperties);

    configuration.addAnnotatedClass(Foo.class);

    final ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(configuration.getProperties()).build();
    final SessionFactory sessionFactory = configuration.buildSessionFactory(serviceRegistry);
    return sessionFactory;
}
 
源代码17 项目: document-management-system   文件: SchemaUpdate.java
public static void main(String[] args) {
	try {
		Configuration cfg = new Configuration();
		String outFile = null;

		boolean script = true;
		// If true then execute db updates, otherwise just generate and
		// display updates
		boolean doUpdate = true;
		String propFile = null;

		for (int i = 0; i < args.length; i++) {
			if (args[i].startsWith("--")) {
				if (args[i].equals("--quiet")) {
					script = false;
				} else if (args[i].startsWith("--properties=")) {
					propFile = args[i].substring(13);
				} else if (args[i].startsWith("--config=")) {
					cfg.configure(args[i].substring(9));
				} else if (args[i].startsWith("--text")) {
					doUpdate = false;
				} else if (args[i].startsWith("--naming=")) {
					cfg.setNamingStrategy((NamingStrategy) ReflectHelper.classForName(
							args[i].substring(9)).newInstance());
				} else if (args[i].startsWith("--output=")) {
					outFile = args[i].substring(9);
				}
			} else {
				cfg.addFile(args[i]);
			}

		}

		if (propFile != null) {
			Properties props = new Properties();
			props.putAll(cfg.getProperties());
			props.load(new FileInputStream(propFile));
			cfg.setProperties(props);
		}

		new SchemaUpdate(cfg).setOutputFile(outFile).execute(script, doUpdate);
	} catch (Exception e) {
		log.error("Error running schema update", e);
		e.printStackTrace();
	}
}
 
源代码18 项目: modeldb   文件: ModelDBHibernateUtil.java
public static SessionFactory createOrGetSessionFactory() throws ModelDBException {
  if (sessionFactory == null) {
    LOGGER.info("Fetching sessionFactory");
    try {
      App app = App.getInstance();
      Map<String, Object> databasePropMap = app.getDatabasePropMap();

      Map<String, Object> rDBPropMap =
          (Map<String, Object>) databasePropMap.get("RdbConfiguration");

      databaseName = (String) rDBPropMap.get("RdbDatabaseName");
      if (!app.getTraceEnabled()) {
        rDBDriver = (String) rDBPropMap.get("RdbDriver");
      } else {
        rDBDriver = "io.opentracing.contrib.jdbc.TracingDriver";
      }
      rDBUrl = (String) rDBPropMap.get("RdbUrl");
      rDBDialect = (String) rDBPropMap.get("RdbDialect");
      configUsername = (String) rDBPropMap.get("RdbUsername");
      configPassword = (String) rDBPropMap.get("RdbPassword");
      if (databasePropMap.containsKey("timeout")) {
        timeout = (Integer) databasePropMap.get("timeout");
      }
      liquibaseLockThreshold =
          Long.parseLong(databasePropMap.getOrDefault("liquibaseLockThreshold", "60").toString());

      // Change liquibase default table names
      System.getProperties().put("liquibase.databaseChangeLogTableName", "database_change_log");
      System.getProperties()
          .put("liquibase.databaseChangeLogLockTableName", "database_change_log_lock");

      // Hibernate settings equivalent to hibernate.cfg.xml's properties
      Configuration configuration = new Configuration();

      Properties settings = new Properties();

      String connectionString =
          rDBUrl
              + "/"
              + databaseName
              + "?createDatabaseIfNotExist=true&useUnicode=yes&characterEncoding=UTF-8";
      settings.put(Environment.DRIVER, rDBDriver);
      settings.put(Environment.URL, connectionString);
      settings.put(Environment.USER, configUsername);
      settings.put(Environment.PASS, configPassword);
      settings.put(Environment.DIALECT, rDBDialect);
      settings.put(Environment.HBM2DDL_AUTO, "validate");
      settings.put(Environment.SHOW_SQL, "false");
      configuration.setProperties(settings);

      LOGGER.trace("connectionString {}", connectionString);
      // Create registry builder
      StandardServiceRegistryBuilder registryBuilder =
          new StandardServiceRegistryBuilder().applySettings(settings);
      MetadataSources metaDataSrc = new MetadataSources(registryBuilder.build());
      for (Class entity : entities) {
        metaDataSrc.addAnnotatedClass(entity);
      }

      // Check DB is up or not
      boolean dbConnectionStatus =
          checkDBConnection(
              rDBDriver, rDBUrl, databaseName, configUsername, configPassword, timeout);
      if (!dbConnectionStatus) {
        checkDBConnectionInLoop(true);
      }

      releaseLiquibaseLock(metaDataSrc);

      // Run tables liquibase migration
      createTablesLiquibaseMigration(metaDataSrc);

      // Create session factory and validate entity
      sessionFactory = metaDataSrc.buildMetadata().buildSessionFactory();

      // Export schema
      if (ModelDBConstants.EXPORT_SCHEMA) {
        exportSchema(metaDataSrc.buildMetadata());
      }

      // Check if any migration need to be run or not and based on the migration status flag
      runMigration();

      LOGGER.info(ModelDBMessages.READY_STATUS, isReady);
      isReady = true;
      return sessionFactory;
    } catch (Exception e) {
      LOGGER.warn(
          "ModelDBHibernateUtil getSessionFactory() getting error : {}", e.getMessage(), e);
      if (registry != null) {
        StandardServiceRegistryBuilder.destroy(registry);
      }
      throw new ModelDBException(e.getMessage());
    }
  } else {
    return loopBack(sessionFactory);
  }
}
 
源代码19 项目: cacheonix-core   文件: SchemaExport.java
public static void main(String[] args) {
	try {
		Configuration cfg = new Configuration();

		boolean script = true;
		boolean drop = false;
		boolean create = false;
		boolean halt = false;
		boolean export = true;
		String outFile = null;
		String importFile = "/import.sql";
		String propFile = null;
		boolean format = false;
		String delim = null;

		for ( int i = 0; i < args.length; i++ ) {
			if ( args[i].startsWith( "--" ) ) {
				if ( args[i].equals( "--quiet" ) ) {
					script = false;
				}
				else if ( args[i].equals( "--drop" ) ) {
					drop = true;
				}
				else if ( args[i].equals( "--create" ) ) {
					create = true;
				}
				else if ( args[i].equals( "--haltonerror" ) ) {
					halt = true;
				}
				else if ( args[i].equals( "--text" ) ) {
					export = false;
				}
				else if ( args[i].startsWith( "--output=" ) ) {
					outFile = args[i].substring( 9 );
				}
				else if ( args[i].startsWith( "--import=" ) ) {
					importFile = args[i].substring( 9 );
				}
				else if ( args[i].startsWith( "--properties=" ) ) {
					propFile = args[i].substring( 13 );
				}
				else if ( args[i].equals( "--format" ) ) {
					format = true;
				}
				else if ( args[i].startsWith( "--delimiter=" ) ) {
					delim = args[i].substring( 12 );
				}
				else if ( args[i].startsWith( "--config=" ) ) {
					cfg.configure( args[i].substring( 9 ) );
				}
				else if ( args[i].startsWith( "--naming=" ) ) {
					cfg.setNamingStrategy(
							( NamingStrategy ) ReflectHelper.classForName( args[i].substring( 9 ) )
									.newInstance()
					);
				}
			}
			else {
				String filename = args[i];
				if ( filename.endsWith( ".jar" ) ) {
					cfg.addJar( new File( filename ) );
				}
				else {
					cfg.addFile( filename );
				}
			}

		}

		if ( propFile != null ) {
			Properties props = new Properties();
			props.putAll( cfg.getProperties() );
			props.load( new FileInputStream( propFile ) );
			cfg.setProperties( props );
		}

		SchemaExport se = new SchemaExport( cfg )
				.setHaltOnError( halt )
				.setOutputFile( outFile )
				.setImportFile( importFile )
				.setDelimiter( delim );
		if ( format ) {
			se.setFormat( true );
		}
		se.execute( script, export, drop, create );

	}
	catch ( Exception e ) {
		log.error( "Error creating schema ", e );
		e.printStackTrace();
	}
}
 
源代码20 项目: cacheonix-core   文件: SchemaUpdate.java
public static void main(String[] args) {
	try {
		Configuration cfg = new Configuration();

		boolean script = true;
		// If true then execute db updates, otherwise just generate and display updates
		boolean doUpdate = true;
		String propFile = null;

		for ( int i = 0; i < args.length; i++ ) {
			if ( args[i].startsWith( "--" ) ) {
				if ( args[i].equals( "--quiet" ) ) {
					script = false;
				}
				else if ( args[i].startsWith( "--properties=" ) ) {
					propFile = args[i].substring( 13 );
				}
				else if ( args[i].startsWith( "--config=" ) ) {
					cfg.configure( args[i].substring( 9 ) );
				}
				else if ( args[i].startsWith( "--text" ) ) {
					doUpdate = false;
				}
				else if ( args[i].startsWith( "--naming=" ) ) {
					cfg.setNamingStrategy(
							( NamingStrategy ) ReflectHelper.classForName( args[i].substring( 9 ) ).newInstance()
					);
				}
			}
			else {
				cfg.addFile( args[i] );
			}

		}

		if ( propFile != null ) {
			Properties props = new Properties();
			props.putAll( cfg.getProperties() );
			props.load( new FileInputStream( propFile ) );
			cfg.setProperties( props );
		}

		new SchemaUpdate( cfg ).execute( script, doUpdate );
	}
	catch ( Exception e ) {
		log.error( "Error running schema update", e );
		e.printStackTrace();
	}
}