Package org.hibernate.cfg
Class Environment
java.lang.Object
org.hibernate.cfg.Environment
- All Implemented Interfaces:
AgroalSettings
,AvailableSettings
,BatchSettings
,BytecodeSettings
,C3p0Settings
,CacheSettings
,EnvironmentSettings
,FetchSettings
,HikariCPSettings
,JdbcSettings
,JpaComplianceSettings
,ManagedBeanSettings
,MappingSettings
,MultiTenancySettings
,PersistenceSettings
,QuerySettings
,SchemaToolingSettings
,SessionEventSettings
,StatisticsSettings
,TransactionSettings
,ValidationSettings
Provides access to configuration properties passed in
Properties
objects.
Hibernate has two property scopes:
- Factory-level properties are specified when a
SessionFactory
is configured and instantiated. Each instance might have different property values. - System-level properties are shared by all factory instances and are
always determined by the
Environment
properties ingetProperties()
.
Environment
properties are populated by calling System.getProperties()
and then from a resource named /hibernate.properties
, if it exists. System
properties override properties specified in hibernate.properties
.
The SessionFactory
obtains properties from:
system properties
,- properties defined in a resource named
/hibernate.properties
, and - any instance of
Properties
passed toConfiguration.addProperties(java.util.Properties)
.
Property | Interpretation |
"hibernate.dialect" | name of Dialect subclass |
"hibernate.connection.provider_class" | name of a ConnectionProvider
subclass (if not specified, heuristics are used) |
"hibernate.connection.username" | database username |
"hibernate.connection.password" | database password |
"hibernate.connection.url" | JDBC URL (when using DriverManager ) |
"hibernate.connection.driver_class" | classname of JDBC driver |
"hibernate.connection.isolation" | JDBC transaction isolation level (only when using
DriverManager )
|
"hibernate.connection.pool_size" | the maximum size of the connection pool (only when using
DriverManager )
|
"hibernate.connection.datasource" | datasource JNDI name (when using DataSource ) |
"hibernate.jndi.url" | JNDI InitialContext URL |
"hibernate.jndi.class" | JNDI InitialContext class name |
"hibernate.max_fetch_depth" | maximum depth of outer join fetching |
"hibernate.jdbc.batch_size" | enable use of JDBC2 batch API for drivers which support it |
"hibernate.jdbc.fetch_size" | set the JDBC fetch size |
"hibernate.jdbc.use_get_generated_keys" | enable use of JDBC3 Statement.getGeneratedKeys()
to retrieve natively generated keys after insert. Requires JDBC3+ driver and
JRE1.4+ |
"hibernate.hbm2ddl.auto" | enable auto DDL export |
"hibernate.default_schema" | use given schema name for unqualified tables (always optional) |
"hibernate.default_catalog" | use given catalog name for unqualified tables (always optional) |
"hibernate.transaction.jta.platform" | name of JtaPlatform
implementation |
- See Also:
- API Note:
- This is really considered an internal contract, but leaving in place in this
package as many applications use it historically. However, consider migrating to use
AvailableSettings
instead.
-
Field Summary
Fields inherited from interface org.hibernate.cfg.AgroalSettings
AGROAL_ACQUISITION_TIMEOUT, AGROAL_CONFIG_PREFIX, AGROAL_FLUSH_ON_CLOSE, AGROAL_IDLE_TIMEOUT, AGROAL_IDLE_VALIDATION_TIMEOUT, AGROAL_INITIAL_SIZE, AGROAL_INITIAL_SQL, AGROAL_LEAK_TIMEOUT, AGROAL_MAX_LIFETIME, AGROAL_MAX_SIZE, AGROAL_MIN_SIZE, AGROAL_VALIDATE_ON_BORROW, AGROAL_VALIDATION_TIMEOUT
Fields inherited from interface org.hibernate.cfg.AvailableSettings
CFG_XML_FILE, CURRENT_SESSION_CONTEXT_CLASS, CUSTOM_ENTITY_DIRTINESS_STRATEGY, DELAY_ENTITY_LOADER_CREATIONS, DISCARD_PC_ON_CLOSE, EVENT_LISTENER_PREFIX, HBM_XML_FILES, JAKARTA_LOCK_SCOPE, JAKARTA_LOCK_TIMEOUT, JPA_LOCK_SCOPE, JPA_LOCK_TIMEOUT, LOADED_CLASSES, MERGE_ENTITY_COPY_OBSERVER, ORM_XML_FILES, USE_IDENTIFIER_ROLLBACK
Fields inherited from interface org.hibernate.cfg.BatchSettings
BATCH_STRATEGY, BATCH_VERSIONED_DATA, BUILDER, ORDER_INSERTS, ORDER_UPDATES, STATEMENT_BATCH_SIZE
Fields inherited from interface org.hibernate.cfg.BytecodeSettings
BYTECODE_PROVIDER, ENHANCER_ENABLE_ASSOCIATION_MANAGEMENT, ENHANCER_ENABLE_DIRTY_TRACKING, ENHANCER_ENABLE_LAZY_INITIALIZATION
Fields inherited from interface org.hibernate.cfg.C3p0Settings
C3P0_ACQUIRE_INCREMENT, C3P0_CONFIG_PREFIX, C3P0_IDLE_TEST_PERIOD, C3P0_MAX_SIZE, C3P0_MAX_STATEMENTS, C3P0_MIN_SIZE, C3P0_TIMEOUT
Fields inherited from interface org.hibernate.cfg.CacheSettings
AUTO_EVICT_COLLECTION_CACHE, CACHE_KEYS_FACTORY, CACHE_REGION_FACTORY, CACHE_REGION_PREFIX, CLASS_CACHE_PREFIX, COLLECTION_CACHE_PREFIX, DEFAULT_CACHE_CONCURRENCY_STRATEGY, JAKARTA_SHARED_CACHE_MODE, JAKARTA_SHARED_CACHE_RETRIEVE_MODE, JAKARTA_SHARED_CACHE_STORE_MODE, JPA_SHARED_CACHE_MODE, JPA_SHARED_CACHE_RETRIEVE_MODE, JPA_SHARED_CACHE_STORE_MODE, QUERY_CACHE_FACTORY, QUERY_CACHE_LAYOUT, USE_DIRECT_REFERENCE_CACHE_ENTRIES, USE_MINIMAL_PUTS, USE_QUERY_CACHE, USE_SECOND_LEVEL_CACHE, USE_STRUCTURED_CACHE
Fields inherited from interface org.hibernate.cfg.EnvironmentSettings
CLASSLOADERS, JNDI_CLASS, JNDI_PREFIX, JNDI_URL, TC_CLASSLOADER
Fields inherited from interface org.hibernate.cfg.FetchSettings
DEFAULT_BATCH_FETCH_SIZE, MAX_FETCH_DEPTH, USE_SUBSELECT_FETCH
Fields inherited from interface org.hibernate.cfg.HikariCPSettings
HIKARI_ACQUISITION_TIMEOUT, HIKARI_CONFIG_PREFIX, HIKARI_IDLE_TIMEOUT, HIKARI_INITIAL_SQL, HIKARI_INITIALIZATION_TIMEOUT, HIKARI_ISOLATE_INTERNAL_QUERIES, HIKARI_KEEPALIVE_TIME, HIKARI_LEAK_TIMEOUT, HIKARI_MAX_LIFETIME, HIKARI_MAX_SIZE, HIKARI_MIN_IDLE_SIZE, HIKARI_POOL_NAME, HIKARI_READ_ONLY, HIKARI_VALIDATION_TIMEOUT
Fields inherited from interface org.hibernate.cfg.JdbcSettings
ALLOW_METADATA_ON_BOOT, AUTOCOMMIT, CONNECTION_HANDLING, CONNECTION_PREFIX, CONNECTION_PROVIDER, CONNECTION_PROVIDER_DISABLES_AUTOCOMMIT, DATASOURCE, DIALECT, DIALECT_DB_MAJOR_VERSION, DIALECT_DB_MINOR_VERSION, DIALECT_DB_NAME, DIALECT_DB_VERSION, DIALECT_NATIVE_PARAM_MARKERS, DIALECT_RESOLVERS, DRIVER, FORMAT_SQL, HBM2DDL_CONNECTION, HIGHLIGHT_SQL, ISOLATION, JAKARTA_HBM2DDL_CONNECTION, JAKARTA_HBM2DDL_DB_MAJOR_VERSION, JAKARTA_HBM2DDL_DB_MINOR_VERSION, JAKARTA_HBM2DDL_DB_NAME, JAKARTA_HBM2DDL_DB_VERSION, JAKARTA_JDBC_DRIVER, JAKARTA_JDBC_PASSWORD, JAKARTA_JDBC_URL, JAKARTA_JDBC_USER, JAKARTA_JTA_DATASOURCE, JAKARTA_NON_JTA_DATASOURCE, JDBC_TIME_ZONE, JPA_JDBC_DRIVER, JPA_JDBC_PASSWORD, JPA_JDBC_URL, JPA_JDBC_USER, JPA_JTA_DATASOURCE, JPA_NON_JTA_DATASOURCE, LOG_JDBC_WARNINGS, LOG_SLOW_QUERY, NON_CONTEXTUAL_LOB_CREATION, PASS, POOL_SIZE, SHOW_SQL, STATEMENT_FETCH_SIZE, STATEMENT_INSPECTOR, URL, USE_GET_GENERATED_KEYS, USE_SCROLLABLE_RESULTSET, USE_SQL_COMMENTS, USER
Fields inherited from interface org.hibernate.cfg.JpaComplianceSettings
JPA_CACHING_COMPLIANCE, JPA_CASCADE_COMPLIANCE, JPA_CLOSED_COMPLIANCE, JPA_COMPLIANCE, JPA_ID_GENERATOR_GLOBAL_SCOPE_COMPLIANCE, JPA_LOAD_BY_ID_COMPLIANCE, JPA_ORDER_BY_MAPPING_COMPLIANCE, JPA_PROXY_COMPLIANCE, JPA_QUERY_COMPLIANCE, JPA_TRANSACTION_COMPLIANCE, JPAQL_STRICT_COMPLIANCE
Fields inherited from interface org.hibernate.cfg.ManagedBeanSettings
ALLOW_EXTENSIONS_IN_CDI, BEAN_CONTAINER, CDI_BEAN_MANAGER, DELAY_CDI_ACCESS, JAKARTA_CDI_BEAN_MANAGER
Fields inherited from interface org.hibernate.cfg.MappingSettings
COLUMN_ORDERING_STRATEGY, DEFAULT_CATALOG, DEFAULT_LIST_SEMANTICS, DEFAULT_SCHEMA, FORCE_DISCRIMINATOR_IN_SELECTS_BY_DEFAULT, GLOBALLY_QUOTED_IDENTIFIERS, GLOBALLY_QUOTED_IDENTIFIERS_SKIP_COLUMN_DEFINITIONS, ID_DB_STRUCTURE_NAMING_STRATEGY, IGNORE_EXPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS, IMPLICIT_DISCRIMINATOR_COLUMNS_FOR_JOINED_SUBCLASS, IMPLICIT_NAMING_STRATEGY, JAVA_TIME_USE_DIRECT_JDBC, JPA_METAMODEL_POPULATION, JSON_FORMAT_MAPPER, KEYWORD_AUTO_QUOTING_ENABLED, PHYSICAL_NAMING_STRATEGY, PREFER_NATIVE_ENUM_TYPES, PREFERRED_ARRAY_JDBC_TYPE, PREFERRED_BOOLEAN_JDBC_TYPE, PREFERRED_DURATION_JDBC_TYPE, PREFERRED_INSTANT_JDBC_TYPE, PREFERRED_POOLED_OPTIMIZER, PREFERRED_UUID_JDBC_TYPE, SEQUENCE_INCREMENT_SIZE_MISMATCH_STRATEGY, STATIC_METAMODEL_POPULATION, TABLE_GENERATOR_STORE_LAST_USED, TIMEZONE_DEFAULT_STORAGE, TRANSFORM_HBM_XML, TRANSFORM_HBM_XML_FEATURE_HANDLING, USE_NATIONALIZED_CHARACTER_DATA, VALIDATE_XML, WRAPPER_ARRAY_HANDLING, XML_FORMAT_MAPPER, XML_FORMAT_MAPPER_LEGACY_FORMAT, XML_MAPPING_ENABLED
Fields inherited from interface org.hibernate.cfg.MultiTenancySettings
MULTI_TENANT_CONNECTION_PROVIDER, MULTI_TENANT_IDENTIFIER_RESOLVER, TENANT_IDENTIFIER_TO_USE_FOR_ANY_KEY
Fields inherited from interface org.hibernate.cfg.PersistenceSettings
JAKARTA_PERSISTENCE_PROVIDER, JAKARTA_TRANSACTION_TYPE, JPA_CALLBACKS_ENABLED, JPA_PERSISTENCE_PROVIDER, JPA_TRANSACTION_TYPE, PERSISTENCE_UNIT_NAME, SCANNER, SCANNER_ARCHIVE_INTERPRETER, SCANNER_DISCOVERY, SESSION_FACTORY_JNDI_NAME, SESSION_FACTORY_NAME, SESSION_FACTORY_NAME_IS_JNDI, SESSION_FACTORY_OBSERVER, UNOWNED_ASSOCIATION_TRANSIENT_CHECK
Fields inherited from interface org.hibernate.cfg.QuerySettings
CALLABLE_NAMED_PARAMS_ENABLED, CRITERIA_COPY_TREE, CRITERIA_VALUE_HANDLING_MODE, DEFAULT_NULL_ORDERING, FAIL_ON_PAGINATION_OVER_COLLECTION_FETCH, IMMUTABLE_ENTITY_UPDATE_QUERY_HANDLING_MODE, IN_CLAUSE_PARAMETER_PADDING, JSON_FUNCTIONS_ENABLED, NATIVE_IGNORE_JDBC_PARAMETERS, NATIVE_PREFER_JDBC_DATETIME_TYPES, PORTABLE_INTEGER_DIVISION, QUERY_MULTI_TABLE_INSERT_STRATEGY, QUERY_MULTI_TABLE_MUTATION_STRATEGY, QUERY_PASS_PROCEDURE_PARAMETER_NAMES, QUERY_PLAN_CACHE_ENABLED, QUERY_PLAN_CACHE_MAX_SIZE, QUERY_PLAN_CACHE_PARAMETER_METADATA_MAX_SIZE, QUERY_STARTUP_CHECKING, SEMANTIC_QUERY_PRODUCER, SEMANTIC_QUERY_TRANSLATOR, XML_FUNCTIONS_ENABLED
Fields inherited from interface org.hibernate.cfg.SchemaToolingSettings
BULK_ID_STRATEGY_GLOBAL_TEMPORARY_CREATE_TABLES, BULK_ID_STRATEGY_GLOBAL_TEMPORARY_DROP_TABLES, BULK_ID_STRATEGY_LOCAL_TEMPORARY_DROP_TABLES, BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_CREATE_TABLES, BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_DROP_TABLES, ENABLE_SYNONYMS, EXTRA_PHYSICAL_TABLE_TYPES, HBM2DDL_AUTO, HBM2DDL_CHARSET_NAME, HBM2DDL_CREATE_NAMESPACES, HBM2DDL_CREATE_SCHEMAS, HBM2DDL_CREATE_SCRIPT_SOURCE, HBM2DDL_CREATE_SOURCE, HBM2DDL_DATABASE_ACTION, HBM2DDL_DEFAULT_CONSTRAINT_MODE, HBM2DDL_DELIMITER, HBM2DDL_DROP_SCRIPT_SOURCE, HBM2DDL_DROP_SOURCE, HBM2DDL_FILTER_PROVIDER, HBM2DDL_HALT_ON_ERROR, HBM2DDL_IMPORT_FILES, HBM2DDL_IMPORT_FILES_SQL_EXTRACTOR, HBM2DDL_JDBC_METADATA_EXTRACTOR_STRATEGY, HBM2DDL_LOAD_SCRIPT_SOURCE, HBM2DDL_SCRIPTS_ACTION, HBM2DDL_SCRIPTS_CREATE_APPEND, HBM2DDL_SCRIPTS_CREATE_TARGET, HBM2DDL_SCRIPTS_DROP_TARGET, JAKARTA_HBM2DDL_CREATE_SCHEMAS, JAKARTA_HBM2DDL_CREATE_SCRIPT_SOURCE, JAKARTA_HBM2DDL_CREATE_SOURCE, JAKARTA_HBM2DDL_DATABASE_ACTION, JAKARTA_HBM2DDL_DROP_SCRIPT_SOURCE, JAKARTA_HBM2DDL_DROP_SOURCE, JAKARTA_HBM2DDL_LOAD_SCRIPT_SOURCE, JAKARTA_HBM2DDL_SCRIPTS_ACTION, JAKARTA_HBM2DDL_SCRIPTS_CREATE_TARGET, JAKARTA_HBM2DDL_SCRIPTS_DROP_TARGET, SCHEMA_MANAGEMENT_TOOL, STORAGE_ENGINE, UNIQUE_CONSTRAINT_SCHEMA_UPDATE_STRATEGY
Fields inherited from interface org.hibernate.cfg.SessionEventSettings
AUTO_SESSION_EVENTS_LISTENER, INTERCEPTOR, LOG_SESSION_METRICS, SESSION_SCOPED_INTERCEPTOR
Fields inherited from interface org.hibernate.cfg.StatisticsSettings
GENERATE_STATISTICS, QUERY_STATISTICS_MAX_SIZE, STATS_BUILDER
Fields inherited from interface org.hibernate.cfg.TransactionSettings
ALLOW_JTA_TRANSACTION_ACCESS, ALLOW_UPDATE_OUTSIDE_TRANSACTION, AUTO_CLOSE_SESSION, ENABLE_LAZY_LOAD_NO_TRANS, FLUSH_BEFORE_COMPLETION, JTA_CACHE_TM, JTA_CACHE_UT, JTA_PLATFORM, JTA_PLATFORM_RESOLVER, JTA_TRACK_BY_THREAD, PREFER_USER_TRANSACTION, TRANSACTION_COORDINATOR_STRATEGY
Fields inherited from interface org.hibernate.cfg.ValidationSettings
CHECK_NULLABILITY, JAKARTA_PERSIST_VALIDATION_GROUP, JAKARTA_REMOVE_VALIDATION_GROUP, JAKARTA_UPDATE_VALIDATION_GROUP, JAKARTA_VALIDATION_FACTORY, JAKARTA_VALIDATION_MODE, JPA_PERSIST_VALIDATION_GROUP, JPA_REMOVE_VALIDATION_GROUP, JPA_UPDATE_VALIDATION_GROUP, JPA_VALIDATION_FACTORY, JPA_VALIDATION_MODE
-
Method Summary
Modifier and TypeMethodDescriptionstatic Properties
Thesystem properties
, extended with all additional properties specified inhibernate.properties
.
-
Method Details
-
getProperties
Thesystem properties
, extended with all additional properties specified inhibernate.properties
.
-