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
,ProxoolSettings
,QuerySettings
,SchemaToolingSettings
,SessionEventSettings
,StatisticsSettings
,TransactionSettings
,ValidationSettings
@Internal public final class Environment extends Object implements AvailableSettings
Provides access to configuration properties passed inProperties
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 callingSystem.getProperties()
and then from a resource named/hibernate.properties
, if it exists. System properties override properties specified inhibernate.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)
.
Configuration 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:
SessionFactory
- 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
ALLOW_REFRESH_DETACHED_ENTITY, CFG_XML_FILE, CURRENT_SESSION_CONTEXT_CLASS, CUSTOM_ENTITY_DIRTINESS_STRATEGY, DELAY_ENTITY_LOADER_CREATIONS, DISCARD_PC_ON_CLOSE, EVENT_LISTENER_PREFIX, FLUSH_MODE, HBM_XML_FILES, IDENTIFIER_GENERATOR_STRATEGY_PROVIDER, 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
BATCH_FETCH_STYLE, 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_LIST_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
ARTIFACT_PROCESSING_ORDER, COLUMN_ORDERING_STRATEGY, CREATE_EMPTY_COMPOSITES_ENABLED, 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_ENTITY_WHERE_CLAUSE_FOR_COLLECTIONS, USE_NATIONALIZED_CHARACTER_DATA, VALIDATE_XML, WRAPPER_ARRAY_HANDLING, XML_FORMAT_MAPPER, 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_NAME, SESSION_FACTORY_NAME_IS_JNDI, SESSION_FACTORY_OBSERVER, UNOWNED_ASSOCIATION_TRANSIENT_CHECK
-
Fields inherited from interface org.hibernate.cfg.ProxoolSettings
PROXOOL_CONFIG_PREFIX, PROXOOL_EXISTING_POOL, PROXOOL_POOL_ALIAS, PROXOOL_PROPERTIES, PROXOOL_XML
-
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, NATIVE_IGNORE_JDBC_PARAMETERS, 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
-
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
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Properties
getProperties()
Thesystem properties
, extended with all additional properties specified inhibernate.properties
.
-
-
-
Method Detail
-
getProperties
public static Properties getProperties()
Thesystem properties
, extended with all additional properties specified inhibernate.properties
.
-
-