Skip navigation links
  • Overview
  • Package
  • Class
  • Use
  • Tree
  • Deprecated
  • Index
  • Help

Deprecated API

Contents

  • Terminally Deprecated
  • Packages
  • Interfaces
  • Classes
  • Enum Classes
  • Exceptions
  • Annotation Interfaces
  • Fields
  • Methods
  • Constructors
  • Enum Constants
  • Annotation Interface Elements
  • Terminally Deprecated Elements
    Element
    Description
    org.hibernate.annotations.AttributeAccessor.value()
    use AttributeAccessor.strategy()
    org.hibernate.annotations.Cascade
    Use the JPA-defined CascadeType
    org.hibernate.annotations.CascadeType
    Use the JPA-defined CascadeType. This enumeration will be removed to alleviate the duplication in naming.
    org.hibernate.annotations.FlushModeType
    Use QueryFlushMode. This enumeration will be removed to alleviate the duplication in naming with FlushModeType.
    org.hibernate.annotations.FractionalSeconds
    Use Column.secondPrecision() which was introduced in JPA 3.2
    org.hibernate.annotations.GenericGenerator
    Use the new approach based on IdGeneratorType.
    org.hibernate.annotations.GenericGenerator.strategy()
    use GenericGenerator.type() for typesafety
    org.hibernate.annotations.GenericGenerators
    since GenericGenerator is deprecated.
    org.hibernate.annotations.NamedNativeQuery.flushMode()
    use NamedNativeQuery.flush()
    org.hibernate.annotations.NamedQuery.flushMode()
    use NamedQuery.flush()
    org.hibernate.annotations.ResultCheckStyle
    Use an Expectation class instead.
    org.hibernate.annotations.Source
    use CurrentTimestamp instead
    org.hibernate.annotations.SQLDelete.check()
    use SQLDelete.verify() with an Expectation class
    org.hibernate.annotations.SQLDeleteAll.check()
    use SQLDeleteAll.verify() with an Expectation class
    org.hibernate.annotations.SQLInsert.check()
    use SQLInsert.verify() with an Expectation class
    org.hibernate.annotations.SQLUpdate.check()
    use SQLUpdate.verify() with an Expectation class
    org.hibernate.BaseSessionEventListener
    Just implement SessionEventListener directly.
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.enableReleaseResourcesOnClose(boolean)
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.isDelayBatchFetchLoaderCreationsEnabled()
    org.hibernate.boot.model.NamedEntityGraphDefinition.getEntityName()
    org.hibernate.boot.model.NamedEntityGraphDefinition.getRegisteredName()
    org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy
    Use PhysicalNamingStrategySnakeCaseImpl.
    org.hibernate.boot.model.source.spi.PluralAttributeMapKeySource.getMapKeyNature()
    No longer used
    org.hibernate.boot.model.TypeDefinitionRegistryStandardImpl
    Internal code should use the internal implementation class TypeDefinitionRegistryStandardImpl. This class will be removed.
    org.hibernate.boot.registry.selector.spi.StrategySelector.registerStrategyImplementor(Class<T>, String, Class<? extends T>)
    Use NamedStrategyContributor instead
    org.hibernate.boot.registry.selector.spi.StrategySelector.unRegisterStrategyImplementor(Class<T>, Class<? extends T>)
    Use NamedStrategyContributor instead
    org.hibernate.boot.SchemaAutoTooling
    This enumeration is currently unused and will be removed. Use Action instead.
    org.hibernate.boot.SessionFactoryBuilder.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    This has no effect and will be removed.
    org.hibernate.boot.SessionFactoryBuilder.enableJpaCascadeCompliance(boolean)
    No longer has any effect.
    org.hibernate.boot.SessionFactoryBuilder.enableReleaseResourcesOnCloseEnabled(boolean)
    since "hibernate.discard_pc_on_close" is deprecated
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.MetadataBuilderContributor
    Use settings, TypeContributor, FunctionContributor or AdditionalMappingContributor instead depending on need
    org.hibernate.boot.spi.MetadataBuildingOptions.getManagedTypeRepresentationResolver()
    no longer called
    org.hibernate.boot.spi.SessionFactoryBuilderImplementor.disableRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.SessionFactoryOptions.getBaselineSessionEventsListenerBuilder()
    This operation is a layer-breaker, exposing an internal type. It will be removed. Use SessionFactoryOptions.buildSessionEventListeners() instead.
    org.hibernate.boot.spi.SessionFactoryOptions.getSchemaAutoTooling()
    This is unused and will be removed.
    org.hibernate.boot.spi.SessionFactoryOptions.getTempTableDdlTransactionHandling()
    org.hibernate.boot.spi.SessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.SessionFactoryOptions.isDelayBatchFetchLoaderCreationsEnabled()
    This is no longer used
    org.hibernate.boot.spi.SessionFactoryOptions.isReleaseResourcesOnCloseEnabled()
    since "hibernate.discard_pc_on_close" is deprecated
    org.hibernate.bytecode.enhance.spi.EnhancementContext.doDirtyCheckingInline(UnloadedClass)
    Will be removed without replacement. See HHH-15641
    org.hibernate.bytecode.enhance.spi.EnhancementContext.hasLazyLoadableAttributes(UnloadedClass)
    Will be removed without replacement. See HHH-15641
    org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(Class<?>, TypeCache.SimpleKey, Function<ByteBuddy, DynamicType.Builder<?>>)
    Use ByteBuddyState.loadProxy(Class, String, BiFunction) instead.
    org.hibernate.bytecode.internal.BytecodeProviderInitiator.BYTECODE_PROVIDER_NAME_BYTEBUDDY
    Register a BytecodeProvider through Java services.
    org.hibernate.bytecode.spi.BytecodeProvider.getReflectionOptimizer(Class, String[], String[], Class[])
    Use BytecodeProvider.getReflectionOptimizer(Class, Map) insstead
    org.hibernate.cfg.AvailableSettings.DELAY_ENTITY_LOADER_CREATIONS
    This setting no longer has any effect.
    org.hibernate.cfg.AvailableSettings.DISCARD_PC_ON_CLOSE
    This is no longer useful and will be removed.
    org.hibernate.cfg.BytecodeSettings.BYTECODE_PROVIDER
    Will be removed, Hibernate ORM will use the BytecodeProvider implementation it finds on the classpath loading it via the standard ServiceLoader mechanism. Currently, there is only a single implementation which is included in Hibernate ORM, so it's not possible to override this. See HHH-17643
    org.hibernate.cfg.BytecodeSettings.ENHANCER_ENABLE_DIRTY_TRACKING
    Will be removed without replacement. See HHH-15641
    org.hibernate.cfg.BytecodeSettings.ENHANCER_ENABLE_LAZY_INITIALIZATION
    Will be removed without replacement. See HHH-15641
    org.hibernate.cfg.JdbcSettings.USE_SCROLLABLE_RESULTSET
    It's not necessary to set this explicitly
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_GLOBAL_TEMPORARY_CREATE_TABLES
    Use GlobalTemporaryTableStrategy.CREATE_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_GLOBAL_TEMPORARY_DROP_TABLES
    Use GlobalTemporaryTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_LOCAL_TEMPORARY_DROP_TABLES
    Use LocalTemporaryTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_CREATE_TABLES
    Use PersistentTableStrategy.CREATE_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_DROP_TABLES
    Use PersistentTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SessionEventSettings.LOG_SESSION_METRICS
    This setting is now ignored. Enable the log category org.hibernate.session.metrics to automatically collect and log session-level metrics.
    org.hibernate.collection.spi.PersistentBag.bag
    Use PersistentBag.bagAsList() or PersistentBag.collection instead.
    org.hibernate.collection.spi.PersistentIdentifierBag.values
    Use PersistentIdentifierBag.bagAsList() or PersistentIdentifierBag.collection instead.
    org.hibernate.dialect.Dialect.getCheckCondition(String, long[])
    use Dialect.getCheckCondition(String, Long[]) instead
    org.hibernate.dialect.Dialect.getNativeIdentifierGeneratorStrategy()
    Use Dialect.getNativeValueGenerationStrategy() instead
    org.hibernate.dialect.Dialect.getSelectClauseNullString(int, TypeConfiguration)
    Use Dialect.getSelectClauseNullString(SqlTypedMapping, TypeConfiguration) instead
    org.hibernate.dialect.hint
    org.hibernate.dialect.hint.IndexQueryHintHandler
    Moved to Dialect
    org.hibernate.dialect.hint.QueryHintHandler
    Moved to Dialect
    org.hibernate.dialect.identity.IdentityColumnSupport.appendIdentitySelectToInsert(String)
    Use IdentityColumnSupport.appendIdentitySelectToInsert(String, String) instead.
    org.hibernate.dialect.sql.ast.H2SqlAstTranslator.visitReturningInsertStatement(TableInsertStandard)
    org.hibernate.dialect.SybaseDialect.jtdsDriver
    org.hibernate.engine.internal.Nullability(SharedSessionContractImplementor)
    org.hibernate.engine.internal.Nullability.checkNullability(Object[], EntityPersister, boolean)
    Use Nullability.checkNullability(Object[], EntityPersister)
    org.hibernate.engine.jdbc.Size(Integer, Integer, Integer, Size.LobMultiplier)
    in favor of Size(Integer, Integer, Long)
    org.hibernate.engine.jdbc.Size(Integer, Integer, Long, Size.LobMultiplier)
    in favor of Size(Integer, Integer, Long)
    org.hibernate.engine.jdbc.Size.getLobMultiplier()
    org.hibernate.engine.jdbc.Size.LobMultiplier
    org.hibernate.engine.jdbc.Size.setLobMultiplier(Size.LobMultiplier)
    org.hibernate.engine.jdbc.spi.SchemaNameResolver
    Use SchemaNameResolver instead.
    org.hibernate.engine.jdbc.spi.TypeInfo
    This class is no longer used and will be removed
    org.hibernate.engine.spi.AbstractDelegatingSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.CascadingActions.DELETE
    Use CascadingActions.REMOVE
    org.hibernate.engine.spi.CascadingActions.getAllElementsIterator(EventSource, CollectionType, Object)
    org.hibernate.engine.spi.CascadingActions.getLoadedElementsIterator(SharedSessionContractImplementor, CollectionType, Object)
    org.hibernate.engine.spi.CascadingActions.LOCK
    because CascadeType.LOCK is deprecated
    org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle
    Use an Expectation class
    org.hibernate.engine.spi.SessionFactoryImplementor.getFetchProfile(String)
    Use SqlAstCreationContext.getFetchProfile(String)
    org.hibernate.engine.spi.SessionFactoryImplementor.getGenerator(String)
    Only used in one place, will be removed
    org.hibernate.engine.spi.SharedSessionContractImplementor.asSessionImplementor()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.asStatelessSession()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.instantiate(String, Object)
    No longer used, replaced by SharedSessionContractImplementor.instantiate(EntityPersister, Object)
    org.hibernate.engine.spi.SharedSessionContractImplementor.isSessionImplementor()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.isStatelessSession()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.transaction.spi.TransactionImplementor
    This is no longer needed
    org.hibernate.event.spi.EventManager
    Renamed EventMonitor.
    org.hibernate.event.spi.HibernateMonitoringEvent
    Renamed DiagnosticEvent.
    org.hibernate.graph.Graph.addKeySubgraph(Attribute<? super J, X>)
    org.hibernate.graph.Graph.addKeySubgraph(Attribute<? super J, X>, Class<? extends X>)
    org.hibernate.graph.Graph.addPluralSubgraph(PluralAttribute<? super J, ?, AJ>)
    Graph.addElementSubgraph(PluralAttribute) was added in JPA 3.2, and so this method is no longer needed
    org.hibernate.graph.Graph.addSubgraph(Attribute<? super J, X>, Class<? extends X>)
    org.hibernate.graph.Graph.makeRootGraph(String, boolean)
    This will be removed
    org.hibernate.graph.Graph.makeSubGraph(boolean)
    This will be removed
    org.hibernate.graph.internal.GraphImpl.makeRootGraph(String, boolean)
    org.hibernate.graph.internal.RootGraphImpl.makeRootGraph(String, boolean)
    org.hibernate.graph.internal.RootGraphImpl.makeSubGraph(boolean)
    org.hibernate.graph.internal.SubGraphImpl.makeSubGraph(boolean)
    org.hibernate.graph.RootGraph.addSubclassSubgraph(Class<? extends T>)
    Planned for removal in JPA 4
    org.hibernate.graph.RootGraph.makeRootGraph(String, boolean)
    org.hibernate.graph.RootGraph.makeSubGraph(boolean)
    org.hibernate.graph.spi.GraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.GraphImplementor.makeSubGraph(boolean)
    org.hibernate.graph.spi.RootGraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.RootGraphImplementor.makeSubGraph(boolean)
    org.hibernate.graph.spi.SubGraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.SubGraphImplementor.makeSubGraph(boolean)
    org.hibernate.id.AbstractPostInsertGenerator
    Subclasses should now directly inherit PostInsertIdentifierGenerator and BulkInsertionCapableIdentifierGenerator, or even better, simply implement OnExecutionGenerator directly.
    org.hibernate.id.Assigned
    replaced by Assigned
    org.hibernate.id.Configurable.configure(Type, Properties, ServiceRegistry)
    Use Configurable.configure(GeneratorCreationContext, Properties) instead
    org.hibernate.id.ForeignGenerator
    This remains around as an implementation detail of hbm.xml mappings.
    org.hibernate.id.IdentifierGenerator.configure(Type, Properties, ServiceRegistry)
    since it overrides a deprecated method
    org.hibernate.id.IdentifierGeneratorHelper.SHORT_CIRCUIT_INDICATOR
    This is not an elegant way to do anything
    org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
    Use GeneratedValuesMutationDelegate instead.
    org.hibernate.id.PersistentIdentifierGenerator.IDENTIFIER_NORMALIZER
    no longer set, use JdbcEnvironment.getIdentifierHelper()
    org.hibernate.IdentifierLoadAccess.with(LockOptions)
    Use one of IdentifierLoadAccess.with(LockMode), IdentifierLoadAccess.with(LockMode, PessimisticLockScope) and/or IdentifierLoadAccess.with(Timeout) instead.
    org.hibernate.internal.BaselineSessionEventsListenerBuilder
    This class is no longer needed and will be removed.
    org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl.tenantIdentifier(String)
    org.hibernate.internal.util.collections.StandardStack(Class<T>)
    use the default constructor instead
    org.hibernate.internal.util.collections.StandardStack(Class<T>, T)
    use StandardStack(Object) instead.
    org.hibernate.internal.util.config.ConfigurationHelper.clone(Map<?, ?>)
    No longer used
    org.hibernate.internal.util.config.ConfigurationHelper.setIfNotNull(Object, String, Map<String, Object>)
    org.hibernate.internal.util.config.ConfigurationHelper.toMap(String, String, Map<?, ?>)
    No longer used
    org.hibernate.internal.util.config.ConfigurationHelper.toMap(String, String, Properties)
    No longer used
    org.hibernate.internal.util.ReflectHelper.implementsInterface(Class<?>, Class<?>)
    No longer used
    org.hibernate.internal.util.StringHelper.generateAlias(String)
    No longer used
    org.hibernate.internal.util.StringHelper.generateAlias(String, int)
    No longer used
    org.hibernate.jpa.boot.spi.JpaSettings.METADATA_BUILDER_CONTRIBUTOR
    Use discovery instead.
    org.hibernate.jpa.boot.spi.JpaSettings.TYPE_CONTRIBUTORS
    Consider using discovery instead to dynamically locate contributors.
    org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor.getTransactionType()
    since PersistenceUnitTransactionType will be removed in JPA 4
    org.hibernate.jpa.boot.spi.TypeContributorList
    Consider using discovery instead to dynamically locate contributors.
    org.hibernate.loader.ast.spi.BatchLoaderFactory.createEntityBatchLoader(int, EntityMappingType, SessionFactoryImplementor)
    Use BatchLoaderFactory.createEntityBatchLoader(int, EntityMappingType, LoadQueryInfluencers) instead
    org.hibernate.loader.ast.spi.Loadable.isAffectedByEnabledFilters(LoadQueryInfluencers)
    Use Loadable.isAffectedByEnabledFilters(LoadQueryInfluencers, boolean) instead
    org.hibernate.loader.ast.spi.Loadable.isAffectedByInfluencers(LoadQueryInfluencers)
    Use Loadable.isAffectedByInfluencers(LoadQueryInfluencers, boolean) instead
    org.hibernate.LockMode.toLockOptions()
    As LockOptions will become an SPI, this method will be removed with no replacement
    org.hibernate.LockOptions
    Since JPA 3.2 and Hibernate 7, a LockMode, Timeout, or PessimisticLockScope may be passed directly as an option to find(), refresh(), or lock(). Therefore, this class is obsolete as an API and will be moved to an SPI package.

    For HQL/JPQL queries, locking should be controlled via operations of the SelectionQuery interface:

    • A timeout may be set via CommonQueryContract.setTimeout(Timeout)
    • The PessimisticLockScope may be set using SelectionQuery.setLockScope(PessimisticLockScope)
    • Alias-specific lock modes may be specified using SelectionQuery.setLockMode(String, LockMode)
    • Use of follow-on locking may be enabled via SelectionQuery.setFollowOnLocking(boolean)
    The interface Timeouts provides several operations to simplify migration.
    org.hibernate.LockOptions.NO_WAIT
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.NONE
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.READ
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.SKIP_LOCKED
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.UPGRADE
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.WAIT_FOREVER
    This, and the other constants on this class, will be removed.
    org.hibernate.mapping.Collection.getTypeParameters()
    org.hibernate.mapping.Collection.setTypeParameters(Properties)
    org.hibernate.mapping.KeyValue.createGenerator(Dialect, RootClass)
    No longer called, except from tests. Use KeyValue.createGenerator(Dialect, RootClass, Property, GeneratorSettings)
    org.hibernate.mapping.RootClass.setExplicitPolymorphism(boolean)
    No longer supported
    org.hibernate.mapping.SimpleValue.createGenerator(Dialect, RootClass)
    org.hibernate.mapping.SimpleValue.DEFAULT_ID_GEN_STRATEGY
    org.hibernate.mapping.Table()
    org.hibernate.mapping.Table.createForeignKey(String, List<Column>, String, String)
    org.hibernate.metamodel.mapping.DiscriminatedAssociationModelPart.getDiscriminatorPart()
    Use Discriminable.getDiscriminatorMapping() instead.
    org.hibernate.metamodel.mapping.EntityMappingType.extractConcreteTypeStateValues(Map<AttributeMapping, DomainResultAssembler>, RowProcessingState)
    org.hibernate.metamodel.mapping.FilterRestrictable.applyFilterRestrictions(Consumer<Predicate>, TableGroup, boolean, Map<String, Filter>, SqlAstCreationState)
    Use FilterRestrictable.applyFilterRestrictions(Consumer, TableGroup, boolean, Map, boolean, SqlAstCreationState) instead
    org.hibernate.metamodel.mapping.ordering.ast.OrderingExpression.apply(QuerySpec, TableGroup, String, String, SortDirection, NullPrecedence, SqlAstCreationState)
    org.hibernate.metamodel.mapping.Restrictable.applyBaseRestrictions(Consumer<Predicate>, TableGroup, boolean, Map<String, Filter>, Set<String>, SqlAstCreationState)
    Use Restrictable.applyBaseRestrictions(Consumer, TableGroup, boolean, Map, boolean, Set, SqlAstCreationState) instead
    org.hibernate.metamodel.MappingMetamodel.locateEntityDescriptor(Class<?>)
    No longer used
    org.hibernate.metamodel.MappingMetamodel.streamCollectionDescriptors()
    org.hibernate.metamodel.MappingMetamodel.streamEntityDescriptors()
    org.hibernate.metamodel.model.domain.internal.EntityPersisterConcurrentMap.convertToMap()
    Higly inefficient - do not use; this exists to support other deprecated methods and will be removed.
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.locateEntityDescriptor(Class<?>)
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.streamCollectionDescriptors()
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.streamEntityDescriptors()
    org.hibernate.metamodel.model.domain.ManagedDomainType.findAttributeInSuperTypes(String)
    Use ManagedDomainType.findAttribute(String)
    org.hibernate.metamodel.RuntimeMetamodels.getEntityMappingType(Class<?>)
    Only called from tests
    org.hibernate.metamodel.RuntimeMetamodels.getEntityMappingType(String)
    Only called from tests
    org.hibernate.metamodel.RuntimeMetamodels.getImportedName(String)
    No longer called
    org.hibernate.metamodel.RuntimeMetamodels.getPluralAttributeMapping(String)
    No longer called
    org.hibernate.MultiIdentifierLoadAccess.with(LockOptions)
    Use one of MultiIdentifierLoadAccess.with(LockMode), MultiIdentifierLoadAccess.with(LockMode, PessimisticLockScope) and/or MultiIdentifierLoadAccess.with(Timeout) instead.
    org.hibernate.NaturalIdLoadAccess.with(LockOptions)
    Use one of NaturalIdLoadAccess.with(LockMode), NaturalIdLoadAccess.with(LockMode, PessimisticLockScope) and/or NaturalIdLoadAccess.with(Timeout) instead.
    org.hibernate.NaturalIdMultiLoadAccess.with(LockOptions)
    Use one of NaturalIdMultiLoadAccess.with(LockMode), NaturalIdMultiLoadAccess.with(LockMode, PessimisticLockScope) and/or NaturalIdMultiLoadAccess.with(Timeout) instead.
    org.hibernate.persister.collection.CollectionPersister.getCollectionType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here (generally), PluralAttributeMapping
    org.hibernate.persister.collection.CollectionPersister.getElementColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getElementType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getElementDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getIdentifierColumnAlias(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getIdentifierType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getIdentifierDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getIndexColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getIndexType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getIndexDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getKeyColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getKeyType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getKeyDescriptor()
    org.hibernate.persister.entity.DiscriminatorMetadata
    The functionality of DiscriminatorMetadata, DiscriminatorType and MetaType have been consolidated into EntityDiscriminatorMapping and DiscriminatorConverter
    org.hibernate.persister.entity.DiscriminatorType
    The functionality of DiscriminatorType, DiscriminatorMetadata and MetaType have been consolidated into EntityDiscriminatorMapping and DiscriminatorConverter
    org.hibernate.persister.entity.EntityPersister.delete(Object, Object, Object, SharedSessionContractImplementor)
    Use DeleteCoordinator.delete(java.lang.Object, java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.getPropertyType(String)
    See ManagedMappingType.findAttributeMapping(String)
    org.hibernate.persister.entity.EntityPersister.getSynchronizationSpaces()
    No longer called
    org.hibernate.persister.entity.EntityPersister.getTypeDiscriminatorMetadata()
    Since DiscriminatorMetadata is deprecated
    org.hibernate.persister.entity.EntityPersister.insert(Object[], Object, SharedSessionContractImplementor)
    Use InsertCoordinator.insert(Object, Object[], SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.insert(Object, Object[], Object, SharedSessionContractImplementor)
    Use InsertCoordinator.insert(Object, Object, Object[], SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.merge(Object, Object[], int[], boolean, Object[], Object, Object, Object, SharedSessionContractImplementor)
    Use UpdateCoordinator.update(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object[], java.lang.Object, java.lang.Object[], int[], boolean, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.processInsertGeneratedProperties(Object, Object, Object[], SharedSessionContractImplementor)
    Use EntityPersister.processInsertGeneratedProperties(Object, Object, Object[], GeneratedValues, SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.processUpdateGeneratedProperties(Object, Object, Object[], SharedSessionContractImplementor)
    Use EntityPersister.processUpdateGeneratedProperties(Object, Object, Object[], GeneratedValues, SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.toColumns(String)
    No longer used in ORM core
    org.hibernate.persister.entity.EntityPersister.update(Object, Object[], int[], boolean, Object[], Object, Object, Object, SharedSessionContractImplementor)
    Use UpdateCoordinator.update(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object[], java.lang.Object, java.lang.Object[], int[], boolean, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.Joinable
    Use ModelPartContainer, TableGroupProducer and/or TableGroupJoinProducer instead depending on need
    org.hibernate.persister.entity.mutation.EntityMutationTarget.getIdentityInsertDelegate()
    use EntityMutationTarget.getInsertDelegate() instead
    org.hibernate.persister.entity.SingleTableEntityPersister.getSubclassClosure()
    No longer used.
    org.hibernate.procedure.ProcedureCall.FUNCTION_RETURN_TYPE_HINT
    Use HibernateHints.HINT_CALLABLE_FUNCTION_RETURN_TYPE.
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Object[], jakarta.persistence.criteria.Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Collection, Expression)
    org.hibernate.query.criteria.JpaFrom.join(Subquery<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Subquery, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(Subquery<X>, SqmJoinType, boolean)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Subquery, org.hibernate.query.common.JoinType, boolean)
    org.hibernate.query.criteria.JpaFrom.join(Class<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Class, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(EntityDomainType<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(EntityDomainType, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(JpaCteCriteria<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(JpaCteCriteria, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.joinLateral(Subquery<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.joinLateral(Subquery, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.NativeQuery.getLockOptions()
    org.hibernate.query.NativeQuery.setLockOptions(LockOptions)
    org.hibernate.query.NullPrecedence.isDefaultOrdering(SortDirection, NullOrdering)
    No longer called
    org.hibernate.query.Order.getAttribute()
    org.hibernate.query.Order.getAttributeName()
    org.hibernate.query.Order.getDirection()
    org.hibernate.query.Order.getElement()
    org.hibernate.query.Order.getEntityClass()
    org.hibernate.query.Order.getNullPrecedence()
    org.hibernate.query.Order.isCaseInsensitive()
    org.hibernate.query.Query.getLockOptions()
    Since LockOptions is transitioning to a new role as an SPI.
    org.hibernate.query.Query.setLockOptions(LockOptions)
    Use one of Query.setLockMode(LockModeType), SelectionQuery.setHibernateLockMode(org.hibernate.LockMode), Query.setLockScope(jakarta.persistence.PessimisticLockScope) and/or Query.setTimeout(jakarta.persistence.Timeout) instead.
    org.hibernate.query.SelectionQuery.getLockOptions()
    Since LockOptions is transitioning to a new role as an SPI.
    org.hibernate.query.spi.ImmutableEntityUpdateQueryHandlingMode
    This enumeration will be removed, and replaced with a simpler boolean-valued switch.
    org.hibernate.query.spi.QueryEngineOptions.getImmutableEntityUpdateQueryHandlingMode()
    Since ImmutableEntityUpdateQueryHandlingMode is deprecated. Use QueryEngineOptions.allowImmutableEntityUpdate() instead.
    org.hibernate.query.spi.QueryParameterBindings.NO_PARAM_BINDINGS
    Use QueryParameterBindings.empty() instead. Currently unused and can be safely removed.
    org.hibernate.query.spi.QueryParameterBindingTypeResolver.getMappingMetamodel()
    org.hibernate.query.spi.QueryParameterBindingTypeResolver.getTypeConfiguration()
    org.hibernate.query.spi.QueryProducerImplementor
    This interface is no longer needed and will be removed.
    org.hibernate.query.sqm.function.FunctionRenderer.render(SqlAppender, List<? extends SqlAstNode>, SqlAstTranslator<?>)
    Use FunctionRenderer.render(SqlAppender, List, ReturnableType, SqlAstTranslator) instead
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(Class<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(Class<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(SqmExpressible<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(SqmExpressible<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.internal.SqmUtil.isFkOptimizationAllowed(SqmPath<?>)
    Use SqmUtil.isFkOptimizationAllowed(SqmPath, EntityAssociationMapping) instead
    org.hibernate.query.sqm.InterpretationException(String)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.query.sqm.IntervalType
    This enum still has exactly one member, and was placed in a package from which it has no usages. It will be removed or moved.
    org.hibernate.query.sqm.NodeBuilder.getImmutableEntityUpdateQueryHandlingMode()
    org.hibernate.query.sqm.NodeBuilder.tuple(Class<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.NodeBuilder.tuple(Class<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.NodeBuilder.tuple(SqmExpressible<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.NodeBuilder.tuple(SqmExpressible<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.produce.function.ArgumentsValidator.validate(List<? extends SqmTypedNode<?>>, String, TypeConfiguration)
    Implement ArgumentsValidator.validate(List, String, BindingContext) instead
    org.hibernate.query.sqm.produce.function.FunctionArgumentTypeResolver.resolveFunctionArgumentType(SqmFunction<?>, int, SqmToSqlAstConverter)
    Use FunctionArgumentTypeResolver.resolveFunctionArgumentType(List, int, SqmToSqlAstConverter) instead
    org.hibernate.query.sqm.produce.function.FunctionReturnTypeResolver.resolveFunctionReturnType(ReturnableType<?>, Supplier<MappingModelExpressible<?>>, List<? extends SqmTypedNode<?>>, TypeConfiguration)
    Use FunctionReturnTypeResolver.resolveFunctionReturnType(ReturnableType, SqmToSqlAstConverter, List, TypeConfiguration) instead
    org.hibernate.query.sqm.tree.domain.SqmManagedDomainType.findAttributeInSuperTypes(String)
    org.hibernate.query.sqm.tree.select.SqmSortSpecification(SqmExpression, SortDirection, NullPrecedence)
    Use SqmSortSpecification(SqmExpression, SortDirection, Nulls) instead
    org.hibernate.query.sqm.tree.update.SqmUpdateStatement(SqmRoot<T>, NodeBuilder)
    was previously used for HQL. Use SqmUpdateStatement(NodeBuilder) instead
    org.hibernate.query.sqm.tree.update.SqmUpdateStatement(SqmRoot<T>, SqmQuerySource, NodeBuilder)
    was previously used for Criteria. Use SqmUpdateStatement(Class, SqmCriteriaNodeBuilder) instead.
    org.hibernate.resource.jdbc.spi.JdbcSessionOwner.getEventManager()
    Use JdbcSessionOwner.getEventMonitor().
    org.hibernate.ScrollableResults.getRowNumber()
    Use ScrollableResults.getPosition()
    org.hibernate.ScrollableResults.setRowNumber(int)
    Use ScrollableResults.position(int)
    org.hibernate.Session.get(Class<T>, Object)
    Because the semantics of this method may change in a future release. Use Session.find(Class, Object) instead.
    org.hibernate.Session.get(Class<T>, Object, LockMode)
    Use EntityManager.find(Class, Object, FindOption...) instead.
    org.hibernate.Session.get(Class<T>, Object, LockOptions)
    This method will be removed. Use EntityManager.find(Class, Object, FindOption...) instead.
    org.hibernate.Session.get(String, Object)
    The semantics of this method may change in a future release. Use SessionFactory.createGraphForDynamicEntity(String) together with EntityManager.find(EntityGraph, Object, FindOption...) to load dynamic entities.
    org.hibernate.Session.get(String, Object, LockMode)
    The semantics of this method may change in a future release.
    org.hibernate.Session.get(String, Object, LockOptions)
    This method will be removed. Use SessionFactory.createGraphForDynamicEntity(String) together with EntityManager.find(EntityGraph, Object, FindOption...) to load dynamic entities.
    org.hibernate.Session.lock(Object, LockOptions)
    This method will be removed. Use EntityManager.lock(Object, LockModeType, LockOption...) instead
    org.hibernate.Session.refresh(Object, LockOptions)
    This method will be removed. Use EntityManager.refresh(Object, RefreshOption...) instead
    org.hibernate.SessionBuilder.tenantIdentifier(String)
    Use SessionBuilder.tenantIdentifier(Object) instead
    org.hibernate.SharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.SimpleNaturalIdLoadAccess.with(LockOptions)
    Use one of SimpleNaturalIdLoadAccess.with(LockMode), SimpleNaturalIdLoadAccess.with(LockMode, PessimisticLockScope) and/or SimpleNaturalIdLoadAccess.with(Timeout) instead.
    org.hibernate.sql.ast.tree.cte.SearchClauseSpecification(CteColumn, SortDirection, NullPrecedence)
    Use SearchClauseSpecification(CteColumn,SortDirection,Nulls) instead
    org.hibernate.sql.ast.tree.select.SortSpecification(Expression, SortDirection, NullPrecedence)
    Use SortSpecification(Expression, SortDirection, Nulls) instead
    org.hibernate.sql.exec.spi.JdbcOperationQuery.getAppliedParameters()
    No longer called
    org.hibernate.sql.model.ast.MutationGroup.forEachTableMutation(BiConsumer<Integer, M>)
    org.hibernate.sql.model.ast.MutationGroup.getTableMutation(String)
    org.hibernate.sql.model.MutationOperationGroup.forEachOperation(BiConsumer<Integer, O>)
    Will be removed. Use the other methods to visit each operation.
    org.hibernate.sql.model.MutationOperationGroup.hasMatching(BiFunction<Integer, O, Boolean>)
    Will be removed. Use the other methods to visit each operation.
    org.hibernate.sql.results.caching.QueryCachePutManager.finishUp(SharedSessionContractImplementor)
    Use QueryCachePutManager.finishUp(int, SharedSessionContractImplementor) instead
    org.hibernate.sql.results.jdbc.spi.JdbcValuesMetadata.resolveType(int, JavaType<J>, SessionFactoryImplementor)
    The existence of this method encourages people to pass around references to the SessionFactoryImplementor when they don't need it
    org.hibernate.sql.results.spi.ScrollableResultsConsumer.INSTANCE
    in favor of ScrollableResultsConsumer.instance()
    org.hibernate.StatelessSessionBuilder.tenantIdentifier(String)
    Use StatelessSessionBuilder.tenantIdentifier(Object) instead
    org.hibernate.tuple
    org.hibernate.tuple.AbstractAttribute
    No direct replacement.
    org.hibernate.tuple.AbstractNonIdentifierAttribute
    No direct replacement.
    org.hibernate.tuple.Attribute
    Replaced by AttributeMapping
    org.hibernate.tuple.BaselineAttributeInformation
    No direct replacement, though see AttributeMapping and AttributeMetadata
    org.hibernate.tuple.component.AbstractCompositionAttribute
    No direct replacement
    org.hibernate.tuple.entity.AbstractEntityBasedAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedAssociationAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedBasicAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedCompositionAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityMetamodel
    Replaced by EntityMappingType. EntityMetamodel was a first attempt at what has become EntityMappingType
    org.hibernate.tuple.entity.VersionProperty
    Replaced by EntityVersionMapping
    org.hibernate.tuple.GenerationTiming
    Replaced by EventType as id-generation has been redefined using the new broader generation approach. For 7.0, this is kept around to support hbm.xml mappings and will be removed in 8.0 once we finally drop hbm.xml support.
    org.hibernate.tuple.IdentifierAttribute
    No direct replacement; see EntityIdentifierMapping
    org.hibernate.tuple.IdentifierProperty
    No direct replacement; see EntityIdentifierMapping
    org.hibernate.tuple.NonIdentifierAttribute
    No direct replacement
    org.hibernate.tuple.PropertyFactory
    No direct replacement
    org.hibernate.tuple.StandardProperty
    Replaced by AttributeMapping
    org.hibernate.type.descriptor.DateTimeUtils.roundToDefaultPrecision(T, Dialect)
    Use DateTimeUtils.adjustToDefaultPrecision(Temporal, Dialect) instead
    org.hibernate.type.descriptor.java.Immutability.INSTANCE
    in favor of Immutability.instance()
    org.hibernate.type.descriptor.java.ImmutableMutabilityPlan.INSTANCE
    in favor of ImmutableMutabilityPlan.instance()
    org.hibernate.type.descriptor.jdbc.H2FormatJsonJdbcType
    Use H2JsonJdbcType instead
    org.hibernate.type.descriptor.jdbc.InstantAsTimestampJdbcType
    Use TimestampUtcAsJdbcTimestampJdbcType
    org.hibernate.type.descriptor.jdbc.InstantAsTimestampWithTimeZoneJdbcType
    Use TimestampUtcAsOffsetDateTimeJdbcType
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(SqlExpressible, Long, Integer, Integer)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(JdbcType, JavaType<?>)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(JdbcType, JavaType<?>, Long, Integer, Integer)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.spi.TypeConfiguration.getJpaCompliance()
    No longer used
    org.hibernate.type.Type.beforeAssemble(Serializable, SharedSessionContractImplementor)
    Is not called anymore
    org.hibernate.usertype.DynamicParameterizedType
    This very old approach was never properly implemented in all contexts, and never actually achieved the type safety it aimed for. Just use ParameterizedType for now.
    org.hibernate.usertype.UserType.nullSafeGet(ResultSet, int, SharedSessionContractImplementor, Object)
    Implement UserType.nullSafeGet(ResultSet, int, WrapperOptions)
    org.hibernate.usertype.UserType.nullSafeSet(PreparedStatement, J, int, SharedSessionContractImplementor)
    Implement UserType.nullSafeSet(PreparedStatement, Object, int, WrapperOptions)
  • Deprecated Packages
    Package
    Description
    org.hibernate.dialect.hint
    org.hibernate.tuple
  • Deprecated Interfaces
    Interface
    Description
    org.hibernate.boot.spi.MetadataBuilderContributor
    Use settings, TypeContributor, FunctionContributor or AdditionalMappingContributor instead depending on need
    org.hibernate.bytecode.enhance.spi.LazyPropertyInitializer.InterceptorImplementor
    Prefer the form of these methods defined on BytecodeLazyAttributeInterceptor instead
    org.hibernate.cache.RegionFactory
    Moved, but still need this definition for ehcache
    org.hibernate.dialect.hint.QueryHintHandler
    Moved to Dialect
    org.hibernate.engine.jdbc.spi.SchemaNameResolver
    Use SchemaNameResolver instead.
    org.hibernate.engine.transaction.spi.TransactionImplementor
    This is no longer needed
    org.hibernate.envers.strategy.AuditStrategy
    use AuditStrategy instead.
    org.hibernate.event.service.spi.JpaBootstrapSensitive
    This is no longer implemented by any listener
    org.hibernate.event.spi.EventManager
    Renamed EventMonitor.
    org.hibernate.event.spi.HibernateMonitoringEvent
    Renamed DiagnosticEvent.
    org.hibernate.event.spi.ReplicateEventListener
    since Session.replicate(java.lang.Object, org.hibernate.ReplicationMode) is deprecated
    org.hibernate.id.insert.InsertGeneratedIdentifierDelegate
    Use GeneratedValuesMutationDelegate instead.
    org.hibernate.id.UUIDGenerationStrategy
    see UUIDGenerator
    org.hibernate.jpa.boot.spi.TypeContributorList
    Consider using discovery instead to dynamically locate contributors.
    org.hibernate.jpa.LegacySpecHints
    Use the SpecHints form instead
    org.hibernate.persister.entity.DiscriminatorMetadata
    The functionality of DiscriminatorMetadata, DiscriminatorType and MetaType have been consolidated into EntityDiscriminatorMapping and DiscriminatorConverter
    org.hibernate.persister.entity.Joinable
    Use ModelPartContainer, TableGroupProducer and/or TableGroupJoinProducer instead depending on need
    org.hibernate.query.spi.QueryProducerImplementor
    This interface is no longer needed and will be removed.
    org.hibernate.spatial.SpatialDialect
    SpatialDialects are no longer needed since Hibernate 6.0
    org.hibernate.spatial.SpatialRelation
    Will be removed in 6
    org.hibernate.transform.ResultTransformer
    Use TupleTransformer and/or ResultListTransformer instead
    org.hibernate.tuple.Attribute
    Replaced by AttributeMapping
    org.hibernate.tuple.IdentifierAttribute
    No direct replacement; see EntityIdentifierMapping
    org.hibernate.tuple.NonIdentifierAttribute
    No direct replacement
    org.hibernate.usertype.DynamicParameterizedType
    This very old approach was never properly implemented in all contexts, and never actually achieved the type safety it aimed for. Just use ParameterizedType for now.
  • Deprecated Classes
    Class
    Description
    org.hibernate.BaseSessionEventListener
    Just implement SessionEventListener directly.
    org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy
    Use PhysicalNamingStrategySnakeCaseImpl.
    org.hibernate.boot.model.TypeDefinitionRegistryStandardImpl
    Internal code should use the internal implementation class TypeDefinitionRegistryStandardImpl. This class will be removed.
    org.hibernate.dialect.hint.IndexQueryHintHandler
    Moved to Dialect
    org.hibernate.engine.jdbc.spi.TypeInfo
    This class is no longer used and will be removed
    org.hibernate.envers.strategy.DefaultAuditStrategy
    use DefaultAuditStrategy instead.
    org.hibernate.envers.strategy.ValidityAuditStrategy
    use ValidityAuditStrategy instead.
    org.hibernate.event.internal.DefaultReplicateEventListener
    since Session.replicate(java.lang.Object, org.hibernate.ReplicationMode) is deprecated
    org.hibernate.generator.internal.SourceGeneration
    because both Source and hbm.xml are deprecated, though this implementation is instructive
    org.hibernate.id.AbstractPostInsertGenerator
    Subclasses should now directly inherit PostInsertIdentifierGenerator and BulkInsertionCapableIdentifierGenerator, or even better, simply implement OnExecutionGenerator directly.
    org.hibernate.id.AbstractUUIDGenerator
    since UUIDHexGenerator is deprecated
    org.hibernate.id.Assigned
    replaced by Assigned
    org.hibernate.id.ForeignGenerator
    This remains around as an implementation detail of hbm.xml mappings.
    org.hibernate.id.GUIDGenerator
    use UuidGenerator
    org.hibernate.id.UUIDGenerator
    use UuidGenerator and UuidGenerator instead
    org.hibernate.id.UUIDHexGenerator
    This remains around as an implementation detail of hbm.xml mappings.
    org.hibernate.internal.BaselineSessionEventsListenerBuilder
    This class is no longer needed and will be removed.
    org.hibernate.internal.util.ConfigHelper
    Use ClassLoaderService instead
    org.hibernate.internal.util.MarkerObject
    This is a legacy of very ancient versions of Hibernate.
    org.hibernate.internal.util.xml.DTDEntityResolver
    Hibernate now uses StAX for XML processing and the role of this class is served now by LocalXmlResourceResolver
    org.hibernate.jpa.event.internal.EmbeddableCallback
    The JPA specification does not require that we allow entity lifecycle callbacks on embeddable classes, and this is a misfeature since:
    • an embeddable objects doesn't have a well-defined lifecycle,
    • it's difficult to understand what this means for composite collection elements, and
    • currently, the PreUpdate/PostUpdate callbacks get called when the embeddable object is not itself being updated.
    It would be OK to simply remove this capability, since fortunately we never documented it.
    org.hibernate.jpa.QueryHints
    Use AvailableHints instead
    org.hibernate.LockOptions
    Since JPA 3.2 and Hibernate 7, a LockMode, Timeout, or PessimisticLockScope may be passed directly as an option to find(), refresh(), or lock(). Therefore, this class is obsolete as an API and will be moved to an SPI package.

    For HQL/JPQL queries, locking should be controlled via operations of the SelectionQuery interface:

    • A timeout may be set via CommonQueryContract.setTimeout(Timeout)
    • The PessimisticLockScope may be set using SelectionQuery.setLockScope(PessimisticLockScope)
    • Alias-specific lock modes may be specified using SelectionQuery.setLockMode(String, LockMode)
    • Use of follow-on locking may be enabled via SelectionQuery.setFollowOnLocking(boolean)
    The interface Timeouts provides several operations to simplify migration.
    org.hibernate.metamodel.mapping.internal.MutableAttributeMappingList
    Please get rid of it: such collections should be immutable.
    org.hibernate.persister.entity.DiscriminatorType
    The functionality of DiscriminatorType, DiscriminatorMetadata and MetaType have been consolidated into EntityDiscriminatorMapping and DiscriminatorConverter
    org.hibernate.spatial.dialect.cockroachdb.CockroachDB202SpatialDialect
    Spatial Dialects are no longer needed. Use the standard CockroachDB dialects
    org.hibernate.spatial.dialect.hana.HANASpatialDialect
    Spatial dialects are no longer needed
    org.hibernate.spatial.dialect.mysql.MySQL56InnoDBSpatialDialect
    Use "hibernate.dialect.storage_engine=innodb" environment variable or JVM system property instead.
    org.hibernate.spatial.dialect.mysql.MySQL56SpatialDialect
    Spatial Dialects are no longer needed
    org.hibernate.spatial.dialect.mysql.MySQL5InnoDBSpatialDialect
    Use "hibernate.dialect.storage_engine=innodb" environment variable or JVM system property instead.
    org.hibernate.spatial.dialect.mysql.MySQL5SpatialDialect
    Spatial Dialects are no longer needed
    org.hibernate.spatial.dialect.mysql.MySQLSpatialDialect
    SpatialDialects are no longer needed in Hibernate 6
    org.hibernate.spatial.dialect.oracle.OracleSpatial10gDialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.dialect.oracle.OracleSpatialSDO10gDialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.dialect.postgis.PostgisPG10Dialect
    org.hibernate.spatial.dialect.postgis.PostgisPG93Dialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.dialect.postgis.PostgisPG94Dialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.dialect.postgis.PostgisPG95Dialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.dialect.sqlserver.SqlServerSpatialDialect
    A SpatialDialect is no longer required. Use the standard Dialect for this database.
    org.hibernate.spatial.predicate.GeolatteFilterPredicate
    Use GeolatteSpatialCriteriaBuilder instead
    org.hibernate.spatial.predicate.GeolatteSpatialPredicates
    Use GeolatteSpatialCriteriaBuilder instead
    org.hibernate.spatial.predicate.JTSSpatialPredicates
    Use JTSSpatialCriteriaBuilder instead
    org.hibernate.transform.AliasToBeanConstructorResultTransformer
    since ResultTransformer is deprecated
    org.hibernate.transform.AliasToBeanResultTransformer
    since ResultTransformer is deprecated
    org.hibernate.transform.AliasToEntityMapResultTransformer
    since ResultTransformer is deprecated
    org.hibernate.transform.ToListResultTransformer
    since ResultTransformer is deprecated
    org.hibernate.transform.Transformers
    since ResultTransformer is deprecated
    org.hibernate.tuple.AbstractAttribute
    No direct replacement.
    org.hibernate.tuple.AbstractNonIdentifierAttribute
    No direct replacement.
    org.hibernate.tuple.BaselineAttributeInformation
    No direct replacement, though see AttributeMapping and AttributeMetadata
    org.hibernate.tuple.component.AbstractCompositionAttribute
    No direct replacement
    org.hibernate.tuple.entity.AbstractEntityBasedAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedAssociationAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedBasicAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityBasedCompositionAttribute
    No direct replacement
    org.hibernate.tuple.entity.EntityMetamodel
    Replaced by EntityMappingType. EntityMetamodel was a first attempt at what has become EntityMappingType
    org.hibernate.tuple.entity.VersionProperty
    Replaced by EntityVersionMapping
    org.hibernate.tuple.IdentifierProperty
    No direct replacement; see EntityIdentifierMapping
    org.hibernate.tuple.PropertyFactory
    No direct replacement
    org.hibernate.tuple.StandardProperty
    Replaced by AttributeMapping
    org.hibernate.type.descriptor.java.ArrayMutabilityPlan
    Use ImmutableObjectArrayMutabilityPlan.get() for object arrays, or implement a dedicated mutability plan for primitive arrays (see for example ShortPrimitiveArrayJavaType's mutability plan).
    org.hibernate.type.descriptor.jdbc.H2FormatJsonJdbcType
    Use H2JsonJdbcType instead
    org.hibernate.type.descriptor.jdbc.InstantAsTimestampJdbcType
    Use TimestampUtcAsJdbcTimestampJdbcType
    org.hibernate.type.descriptor.jdbc.InstantAsTimestampWithTimeZoneJdbcType
    Use TimestampUtcAsOffsetDateTimeJdbcType
    org.hibernate.type.descriptor.jdbc.RealJdbcType
    use FloatJdbcType
  • Deprecated Enum Classes
    Enum Class
    Description
    org.hibernate.annotations.CascadeType
    Use the JPA-defined CascadeType. This enumeration will be removed to alleviate the duplication in naming.
    org.hibernate.annotations.FlushModeType
    Use QueryFlushMode. This enumeration will be removed to alleviate the duplication in naming with FlushModeType.
    org.hibernate.annotations.ResultCheckStyle
    Use an Expectation class instead.
    org.hibernate.boot.SchemaAutoTooling
    This enumeration is currently unused and will be removed. Use Action instead.
    org.hibernate.boot.TempTableDdlTransactionHandling
    All dialects currently use TempTableDdlTransactionHandling.NONE, so it's obsolete.
    org.hibernate.engine.jdbc.Size.LobMultiplier
    org.hibernate.engine.spi.ExecuteUpdateResultCheckStyle
    Use an Expectation class
    org.hibernate.query.NullPrecedence
    Use Jakarta Persistence Nulls instead.
    org.hibernate.query.spi.ImmutableEntityUpdateQueryHandlingMode
    This enumeration will be removed, and replaced with a simpler boolean-valued switch.
    org.hibernate.query.sqm.IntervalType
    This enum still has exactly one member, and was placed in a package from which it has no usages. It will be removed or moved.
    org.hibernate.ReplicationMode
    since Session.replicate(Object, ReplicationMode) is deprecated
    org.hibernate.spatial.SpatialFunction
    To be replaced by CommonSpatialFunction
    org.hibernate.tuple.GenerationTiming
    Replaced by EventType as id-generation has been redefined using the new broader generation approach. For 7.0, this is kept around to support hbm.xml mappings and will be removed in 8.0 once we finally drop hbm.xml support.
  • Deprecated Exceptions
    Exceptions
    Description
    org.hibernate.boot.internal.FailedSecondPassException
    It would be nice to be able to eliminate this completely
    org.hibernate.CallbackException
    Methods of Interceptor are no longer required to throw this exception type.
  • Deprecated Annotation Interfaces
    Annotation Interface
    Description
    org.hibernate.annotations.Cascade
    Use the JPA-defined CascadeType
    org.hibernate.annotations.Check
    Prefer Table.check(), Column.check(), etc., with @CheckConstraint.
    org.hibernate.annotations.Checks
    since Check is deprecated.
    org.hibernate.annotations.Comment
    Prefer Table.comment(), Column.comment(), etc.
    org.hibernate.annotations.Comments
    Per Comment, prefer Table.comment()
    org.hibernate.annotations.FractionalSeconds
    Use Column.secondPrecision() which was introduced in JPA 3.2
    org.hibernate.annotations.GenericGenerator
    Use the new approach based on IdGeneratorType.
    org.hibernate.annotations.GenericGenerators
    since GenericGenerator is deprecated.
    org.hibernate.annotations.Source
    use CurrentTimestamp instead
  • Deprecated Fields
    Field
    Description
    org.hibernate.bytecode.internal.BytecodeProviderInitiator.BYTECODE_PROVIDER_NAME_BYTEBUDDY
    Register a BytecodeProvider through Java services.
    org.hibernate.cfg.AvailableSettings.DELAY_ENTITY_LOADER_CREATIONS
    This setting no longer has any effect.
    org.hibernate.cfg.AvailableSettings.DISCARD_PC_ON_CLOSE
    This is no longer useful and will be removed.
    org.hibernate.cfg.AvailableSettings.JPA_LOCK_SCOPE
    Use AvailableSettings.JAKARTA_LOCK_SCOPE instead
    org.hibernate.cfg.AvailableSettings.JPA_LOCK_TIMEOUT
    Use AvailableSettings.JAKARTA_LOCK_TIMEOUT instead
    org.hibernate.cfg.BatchSettings.BATCH_STRATEGY
    Use BatchSettings.BUILDER instead
    org.hibernate.cfg.BytecodeSettings.BYTECODE_PROVIDER
    Will be removed, Hibernate ORM will use the BytecodeProvider implementation it finds on the classpath loading it via the standard ServiceLoader mechanism. Currently, there is only a single implementation which is included in Hibernate ORM, so it's not possible to override this. See HHH-17643
    org.hibernate.cfg.BytecodeSettings.ENHANCER_ENABLE_DIRTY_TRACKING
    Will be removed without replacement. See HHH-15641
    org.hibernate.cfg.BytecodeSettings.ENHANCER_ENABLE_LAZY_INITIALIZATION
    Will be removed without replacement. See HHH-15641
    org.hibernate.cfg.CacheSettings.CACHE_KEYS_FACTORY
    this is only honored for hibernate-infinispan
    org.hibernate.cfg.CacheSettings.JPA_SHARED_CACHE_MODE
    Use CacheSettings.JAKARTA_SHARED_CACHE_MODE instead
    org.hibernate.cfg.CacheSettings.JPA_SHARED_CACHE_RETRIEVE_MODE
    Use CacheSettings.JAKARTA_SHARED_CACHE_RETRIEVE_MODE instead
    org.hibernate.cfg.CacheSettings.JPA_SHARED_CACHE_STORE_MODE
    Use CacheSettings.JAKARTA_SHARED_CACHE_STORE_MODE instead
    org.hibernate.cfg.JdbcSettings.CONNECTION_PREFIX
    This setting is only supported by C3P0ConnectionProvider and DriverManagerConnectionProviderImpl.
    org.hibernate.cfg.JdbcSettings.DATASOURCE
    The JPA-standard "jakarta.persistence.jtaDataSource" or "jakarta.persistence.nonJtaDataSource" setting are now preferred.
    org.hibernate.cfg.JdbcSettings.DIALECT_DB_MAJOR_VERSION
    Use JdbcSettings.JAKARTA_HBM2DDL_DB_MAJOR_VERSION instead
    org.hibernate.cfg.JdbcSettings.DIALECT_DB_MINOR_VERSION
    Use JdbcSettings.JAKARTA_HBM2DDL_DB_MINOR_VERSION instead
    org.hibernate.cfg.JdbcSettings.DIALECT_DB_NAME
    Use JdbcSettings.JAKARTA_HBM2DDL_DB_NAME instead
    org.hibernate.cfg.JdbcSettings.DIALECT_DB_VERSION
    Use JdbcSettings.JAKARTA_HBM2DDL_DB_VERSION instead
    org.hibernate.cfg.JdbcSettings.DRIVER
    The JPA-standard setting JdbcSettings.JAKARTA_JDBC_DRIVER is now preferred.
    org.hibernate.cfg.JdbcSettings.HBM2DDL_CONNECTION
    Use JdbcSettings.JAKARTA_HBM2DDL_CONNECTION instead
    org.hibernate.cfg.JdbcSettings.JPA_JDBC_DRIVER
    Use JdbcSettings.JAKARTA_JDBC_DRIVER instead
    org.hibernate.cfg.JdbcSettings.JPA_JDBC_PASSWORD
    Use JdbcSettings.JAKARTA_JDBC_PASSWORD instead
    org.hibernate.cfg.JdbcSettings.JPA_JDBC_URL
    Use JdbcSettings.JAKARTA_JDBC_URL instead
    org.hibernate.cfg.JdbcSettings.JPA_JDBC_USER
    Use JdbcSettings.JAKARTA_JDBC_USER instead
    org.hibernate.cfg.JdbcSettings.JPA_JTA_DATASOURCE
    Use JdbcSettings.JAKARTA_JTA_DATASOURCE instead
    org.hibernate.cfg.JdbcSettings.JPA_NON_JTA_DATASOURCE
    Use JdbcSettings.JAKARTA_NON_JTA_DATASOURCE instead
    org.hibernate.cfg.JdbcSettings.PASS
    The JPA-standard setting JdbcSettings.JAKARTA_JDBC_PASSWORD is now preferred.
    org.hibernate.cfg.JdbcSettings.URL
    The JPA-standard setting JdbcSettings.JAKARTA_JDBC_URL is now preferred.
    org.hibernate.cfg.JdbcSettings.USE_SCROLLABLE_RESULTSET
    It's not necessary to set this explicitly
    org.hibernate.cfg.JdbcSettings.USER
    The JPA-standard setting JdbcSettings.JAKARTA_JDBC_USER is now preferred.
    org.hibernate.cfg.JpaComplianceSettings.JPA_CASCADE_COMPLIANCE
    No longer has any effect. Since 7.0 (and removal of save/update processing), Hibernate always cascades PERSIST
    org.hibernate.cfg.JpaComplianceSettings.JPAQL_STRICT_COMPLIANCE
    Prefer JpaComplianceSettings.JPA_QUERY_COMPLIANCE
    org.hibernate.cfg.ManagedBeanSettings.CDI_BEAN_MANAGER
    Use ManagedBeanSettings.JAKARTA_CDI_BEAN_MANAGER instead
    org.hibernate.cfg.PersistenceSettings.JPA_PERSISTENCE_PROVIDER
    Use PersistenceSettings.JAKARTA_PERSISTENCE_PROVIDER instead
    org.hibernate.cfg.PersistenceSettings.JPA_TRANSACTION_TYPE
    Use PersistenceSettings.JAKARTA_TRANSACTION_TYPE instead
    org.hibernate.cfg.QuerySettings.QUERY_PLAN_CACHE_PARAMETER_METADATA_MAX_SIZE
    this setting is not currently used
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_GLOBAL_TEMPORARY_CREATE_TABLES
    Use GlobalTemporaryTableStrategy.CREATE_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_GLOBAL_TEMPORARY_DROP_TABLES
    Use GlobalTemporaryTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_LOCAL_TEMPORARY_DROP_TABLES
    Use LocalTemporaryTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_CREATE_TABLES
    Use PersistentTableStrategy.CREATE_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.BULK_ID_STRATEGY_PERSISTENT_TEMPORARY_DROP_TABLES
    Use PersistentTableStrategy.DROP_ID_TABLES.
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_CREATE_NAMESPACES
    The JPA-standard setting SchemaToolingSettings.JAKARTA_HBM2DDL_CREATE_SCHEMAS is now preferred.
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_CREATE_SCHEMAS
    Use SchemaToolingSettings.JAKARTA_HBM2DDL_CREATE_SCHEMAS instead
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_CREATE_SCRIPT_SOURCE
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_CREATE_SCRIPT_SOURCE
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_CREATE_SOURCE
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_CREATE_SOURCE instead
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_DATABASE_ACTION
    Use SchemaToolingSettings.JAKARTA_HBM2DDL_DATABASE_ACTION instead
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_DROP_SCRIPT_SOURCE
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_DROP_SCRIPT_SOURCE
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_DROP_SOURCE
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_DROP_SOURCE.
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_IMPORT_FILES
    The JPA-standard setting SchemaToolingSettings.JAKARTA_HBM2DDL_LOAD_SCRIPT_SOURCE is now preferred.
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_LOAD_SCRIPT_SOURCE
    Use SchemaToolingSettings.JAKARTA_HBM2DDL_LOAD_SCRIPT_SOURCE instead
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_SCRIPTS_ACTION
    Use SchemaToolingSettings.JAKARTA_HBM2DDL_SCRIPTS_ACTION instead
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_SCRIPTS_CREATE_TARGET
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_SCRIPTS_CREATE_TARGET
    org.hibernate.cfg.SchemaToolingSettings.HBM2DDL_SCRIPTS_DROP_TARGET
    Migrate to SchemaToolingSettings.JAKARTA_HBM2DDL_SCRIPTS_DROP_TARGET
    org.hibernate.cfg.SessionEventSettings.LOG_SESSION_METRICS
    This setting is now ignored. Enable the log category org.hibernate.session.metrics to automatically collect and log session-level metrics.
    org.hibernate.cfg.ValidationSettings.JPA_PERSIST_VALIDATION_GROUP
    Use ValidationSettings.JAKARTA_PERSIST_VALIDATION_GROUP instead
    org.hibernate.cfg.ValidationSettings.JPA_REMOVE_VALIDATION_GROUP
    Use ValidationSettings.JAKARTA_REMOVE_VALIDATION_GROUP instead
    org.hibernate.cfg.ValidationSettings.JPA_UPDATE_VALIDATION_GROUP
    Use ValidationSettings.JAKARTA_UPDATE_VALIDATION_GROUP instead
    org.hibernate.cfg.ValidationSettings.JPA_VALIDATION_FACTORY
    Use ValidationSettings.JAKARTA_VALIDATION_FACTORY instead
    org.hibernate.cfg.ValidationSettings.JPA_VALIDATION_MODE
    Use ValidationSettings.JAKARTA_VALIDATION_MODE instead
    org.hibernate.collection.spi.PersistentBag.bag
    Use PersistentBag.bagAsList() or PersistentBag.collection instead.
    org.hibernate.collection.spi.PersistentIdentifierBag.values
    Use PersistentIdentifierBag.bagAsList() or PersistentIdentifierBag.collection instead.
    org.hibernate.dialect.SybaseDialect.jtdsDriver
    org.hibernate.engine.spi.CascadingActions.DELETE
    Use CascadingActions.REMOVE
    org.hibernate.engine.spi.CascadingActions.LOCK
    because CascadeType.LOCK is deprecated
    org.hibernate.grammars.graph.GraphLanguageLexer.tokenNames
    Use GraphLanguageLexer.VOCABULARY instead.
    org.hibernate.grammars.graph.GraphLanguageParser.tokenNames
    Use GraphLanguageParser.VOCABULARY instead.
    org.hibernate.grammars.hql.HqlLexer.tokenNames
    Use HqlLexer.VOCABULARY instead.
    org.hibernate.grammars.hql.HqlParser.tokenNames
    Use HqlParser.VOCABULARY instead.
    org.hibernate.grammars.importsql.SqlScriptLexer.tokenNames
    Use SqlScriptLexer.VOCABULARY instead.
    org.hibernate.grammars.importsql.SqlScriptParser.tokenNames
    Use SqlScriptParser.VOCABULARY instead.
    org.hibernate.grammars.ordering.OrderingLexer.tokenNames
    Use OrderingLexer.VOCABULARY instead.
    org.hibernate.grammars.ordering.OrderingParser.tokenNames
    Use OrderingParser.VOCABULARY instead.
    org.hibernate.id.IdentifierGeneratorHelper.SHORT_CIRCUIT_INDICATOR
    This is not an elegant way to do anything
    org.hibernate.id.PersistentIdentifierGenerator.IDENTIFIER_NORMALIZER
    no longer set, use JdbcEnvironment.getIdentifierHelper()
    org.hibernate.jdbc.Expectations.BASIC
    Use Expectation.RowCount
    org.hibernate.jdbc.Expectations.NONE
    Use Expectation.None
    org.hibernate.jdbc.Expectations.PARAM
    Use Expectation.OutParameter
    org.hibernate.jpa.boot.spi.JpaSettings.METADATA_BUILDER_CONTRIBUTOR
    Use discovery instead.
    org.hibernate.jpa.boot.spi.JpaSettings.TYPE_CONTRIBUTORS
    Consider using discovery instead to dynamically locate contributors.
    org.hibernate.LockOptions.NO_WAIT
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.NONE
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.READ
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.SKIP_LOCKED
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.UPGRADE
    This, and the other constants on this class, will be removed.
    org.hibernate.LockOptions.WAIT_FOREVER
    This, and the other constants on this class, will be removed.
    org.hibernate.mapping.SimpleValue.DEFAULT_ID_GEN_STRATEGY
    org.hibernate.persister.collection.AbstractCollectionPersister.elementColumnAliases
    org.hibernate.persister.collection.AbstractCollectionPersister.elementType
    org.hibernate.persister.collection.AbstractCollectionPersister.indexColumnAliases
    org.hibernate.persister.collection.AbstractCollectionPersister.keyColumnAliases
    org.hibernate.persister.entity.AbstractEntityPersister.customSQLDelete
    org.hibernate.persister.entity.AbstractEntityPersister.customSQLInsert
    org.hibernate.persister.entity.AbstractEntityPersister.customSQLUpdate
    org.hibernate.persister.entity.AbstractEntityPersister.deleteCallable
    org.hibernate.persister.entity.AbstractEntityPersister.deleteExpectations
    org.hibernate.persister.entity.AbstractEntityPersister.insertCallable
    org.hibernate.persister.entity.AbstractEntityPersister.insertExpectations
    org.hibernate.persister.entity.AbstractEntityPersister.updateCallable
    org.hibernate.persister.entity.AbstractEntityPersister.updateExpectations
    org.hibernate.persister.entity.EntityPersister.ENTITY_ID
    this feature of HQL is now deprecated
    org.hibernate.procedure.ProcedureCall.FUNCTION_RETURN_TYPE_HINT
    Use HibernateHints.HINT_CALLABLE_FUNCTION_RETURN_TYPE.
    org.hibernate.query.spi.QueryParameterBindings.NO_PARAM_BINDINGS
    Use QueryParameterBindings.empty() instead. Currently unused and can be safely removed.
    org.hibernate.sql.results.spi.ScrollableResultsConsumer.INSTANCE
    in favor of ScrollableResultsConsumer.instance()
    org.hibernate.type.descriptor.java.Immutability.INSTANCE
    in favor of Immutability.instance()
    org.hibernate.type.descriptor.java.ImmutableMutabilityPlan.INSTANCE
    in favor of ImmutableMutabilityPlan.instance()
  • Deprecated Methods
    Method
    Description
    org.hibernate.annotations.AttributeAccessor.value()
    use AttributeAccessor.strategy()
    org.hibernate.annotations.GenericGenerator.strategy()
    use GenericGenerator.type() for typesafety
    org.hibernate.annotations.NamedNativeQuery.flushMode()
    use NamedNativeQuery.flush()
    org.hibernate.annotations.NamedQuery.flushMode()
    use NamedQuery.flush()
    org.hibernate.annotations.SQLDelete.check()
    use SQLDelete.verify() with an Expectation class
    org.hibernate.annotations.SQLDeleteAll.check()
    use SQLDeleteAll.verify() with an Expectation class
    org.hibernate.annotations.SQLInsert.check()
    use SQLInsert.verify() with an Expectation class
    org.hibernate.annotations.SQLUpdate.check()
    use SQLUpdate.verify() with an Expectation class
    org.hibernate.boot.archive.scan.spi.Scanner.setArchiveDescriptorFactory(ArchiveDescriptorFactory)
    (since 7.0) Not used; no replacement.
    org.hibernate.boot.archive.scan.spi.ScanOptions.canDetectHibernateMappingFiles()
    With move to unified schema, this setting is now deprecated and will be removed once support for reading hbm.xml files is fully removed.
    org.hibernate.boot.CacheRegionDefinition.getRegion()
    org.hibernate.boot.CacheRegionDefinition.getRegionType()
    org.hibernate.boot.CacheRegionDefinition.getRole()
    org.hibernate.boot.CacheRegionDefinition.getUsage()
    org.hibernate.boot.CacheRegionDefinition.isCacheLazy()
    org.hibernate.boot.internal.MetadataBuilderImpl.contributeType(BasicType<?>)
    org.hibernate.boot.internal.MetadataBuilderImpl.contributeType(BasicType<?>, String...)
    org.hibernate.boot.internal.MetadataBuilderImpl.contributeType(UserType<?>, String[])
    org.hibernate.boot.internal.SessionFactoryBuilderImpl.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    org.hibernate.boot.internal.SessionFactoryBuilderImpl.enableJpaCascadeCompliance(boolean)
    org.hibernate.boot.internal.SessionFactoryBuilderImpl.enableReleaseResourcesOnCloseEnabled(boolean)
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.enableReleaseResourcesOnClose(boolean)
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.getSchemaAutoTooling()
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.getTempTableDdlTransactionHandling()
    org.hibernate.boot.internal.SessionFactoryOptionsBuilder.isDelayBatchFetchLoaderCreationsEnabled()
    org.hibernate.boot.MetadataBuilder.applyIndexView(Object)
    Set the hibernate-models setting hibernate.models.jandex.index instead. This method has no effect.
    org.hibernate.boot.MetadataSources.getXmlBindings()
    Prefer MetadataSources.getMappingXmlBindings() and/or MetadataSources.getHbmXmlBindings()
    org.hibernate.boot.model.CustomSql.getCheckStyle()
    org.hibernate.boot.model.CustomSql.getSql()
    org.hibernate.boot.model.CustomSql.isCallable()
    org.hibernate.boot.model.internal.QueryBinder.createStoredProcedure(NamedNativeQueryDefinition.Builder<?>, MetadataBuildingContext, Supplier<RuntimeException>)
    User should use NamedStoredProcedureQuery instead
    org.hibernate.boot.model.NamedEntityGraphDefinition.getEntityName()
    org.hibernate.boot.model.NamedEntityGraphDefinition.getRegisteredName()
    org.hibernate.boot.model.relational.InitCommand.getInitCommands()
    org.hibernate.boot.model.relational.Namespace.Name.getCatalog()
    org.hibernate.boot.model.relational.Namespace.Name.getSchema()
    org.hibernate.boot.model.source.spi.PluralAttributeMapKeySource.getMapKeyNature()
    No longer used
    org.hibernate.boot.model.TypeContributions.contributeType(BasicType<?>)
    See discussion of TypeContributor in User Guide.
    org.hibernate.boot.model.TypeContributions.contributeType(BasicType<?>, String...)
    Use TypeContributions.contributeType(BasicType) instead.
    org.hibernate.boot.model.TypeContributions.contributeType(UserType<?>, String...)
    Use TypeContributions.contributeType(BasicType) instead.
    org.hibernate.boot.registry.selector.spi.StrategySelector.registerStrategyImplementor(Class<T>, String, Class<? extends T>)
    Use NamedStrategyContributor instead
    org.hibernate.boot.registry.selector.spi.StrategySelector.unRegisterStrategyImplementor(Class<T>, Class<? extends T>)
    Use NamedStrategyContributor instead
    org.hibernate.boot.SessionFactoryBuilder.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    This has no effect and will be removed.
    org.hibernate.boot.SessionFactoryBuilder.enableJpaCascadeCompliance(boolean)
    No longer has any effect.
    org.hibernate.boot.SessionFactoryBuilder.enableReleaseResourcesOnCloseEnabled(boolean)
    since "hibernate.discard_pc_on_close" is deprecated
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryBuilder.applyTempTableDdlTransactionHandling(TempTableDdlTransactionHandling)
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryBuilder.enableReleaseResourcesOnCloseEnabled(boolean)
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.getSchemaAutoTooling()
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.getTempTableDdlTransactionHandling()
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.isReleaseResourcesOnCloseEnabled()
    org.hibernate.boot.spi.AdditionalMappingContributions.contributeBinding(JaxbHbmHibernateMapping)
    hbm.xml mapping file support is deprecated. Use extended orm.xml bindings instead.
    org.hibernate.boot.spi.BootstrapContext.getJandexView()
    Set via the hibernate-models setting hibernate.models.jandex.index instead
    org.hibernate.boot.spi.EffectiveMappingDefaults.getDefaultListClassification()
    No longer supported
    org.hibernate.boot.spi.InFlightMetadataCollector.addAttributeConverter(Class<? extends AttributeConverter<?, ?>>)
    use InFlightMetadataCollector.getConverterRegistry()
    org.hibernate.boot.spi.InFlightMetadataCollector.addAttributeConverter(ConverterDescriptor<?, ?>)
    use InFlightMetadataCollector.getConverterRegistry()
    org.hibernate.boot.spi.InFlightMetadataCollector.addRegisteredConversion(RegisteredConversion)
    use InFlightMetadataCollector.getConverterRegistry()
    org.hibernate.boot.spi.InFlightMetadataCollector.addTypeDefinition(TypeDefinition)
    Use InFlightMetadataCollector.getTypeDefinitionRegistry() instead
    org.hibernate.boot.spi.InFlightMetadataCollector.getAttributeConverterAutoApplyHandler()
    use InFlightMetadataCollector.getConverterRegistry()
    org.hibernate.boot.spi.InFlightMetadataCollector.getModelsContext()
    Use BootstrapContext.getModelsContext() instead.
    org.hibernate.boot.spi.MetadataBuildingOptions.getManagedTypeRepresentationResolver()
    no longer called
    org.hibernate.boot.spi.SessionFactoryBuilderImplementor.disableRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.SessionFactoryOptions.getBaselineSessionEventsListenerBuilder()
    This operation is a layer-breaker, exposing an internal type. It will be removed. Use SessionFactoryOptions.buildSessionEventListeners() instead.
    org.hibernate.boot.spi.SessionFactoryOptions.getSchemaAutoTooling()
    This is unused and will be removed.
    org.hibernate.boot.spi.SessionFactoryOptions.getTempTableDdlTransactionHandling()
    org.hibernate.boot.spi.SessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.SessionFactoryOptions.isDelayBatchFetchLoaderCreationsEnabled()
    This is no longer used
    org.hibernate.boot.spi.SessionFactoryOptions.isReleaseResourcesOnCloseEnabled()
    since "hibernate.discard_pc_on_close" is deprecated
    org.hibernate.bytecode.enhance.spi.EnhancementContext.doDirtyCheckingInline(UnloadedClass)
    Will be removed without replacement. See HHH-15641
    org.hibernate.bytecode.enhance.spi.EnhancementContext.hasLazyLoadableAttributes(UnloadedClass)
    Will be removed without replacement. See HHH-15641
    org.hibernate.bytecode.internal.bytebuddy.ByteBuddyState.loadProxy(Class<?>, TypeCache.SimpleKey, Function<ByteBuddy, DynamicType.Builder<?>>)
    Use ByteBuddyState.loadProxy(Class, String, BiFunction) instead.
    org.hibernate.bytecode.spi.BytecodeProvider.getReflectionOptimizer(Class, String[], String[], Class[])
    Use BytecodeProvider.getReflectionOptimizer(Class, Map) insstead
    org.hibernate.cache.internal.DisabledCaching.getCollectionRegionAccess(NavigableRole)
    org.hibernate.cache.internal.DisabledCaching.getEntityRegionAccess(NavigableRole)
    org.hibernate.cache.internal.DisabledCaching.getNaturalIdCacheRegionAccessStrategy(NavigableRole)
    org.hibernate.cache.internal.EnabledCaching.getCollectionRegionAccess(NavigableRole)
    org.hibernate.cache.internal.EnabledCaching.getEntityRegionAccess(NavigableRole)
    org.hibernate.cache.internal.EnabledCaching.getNaturalIdCacheRegionAccessStrategy(NavigableRole)
    org.hibernate.cache.spi.CacheImplementor.evictQueries()
    only because it's currently never called
    org.hibernate.dialect.DatabaseVersion.makeCopy()
    In dialect implementations, prefer DatabaseVersion.makeCopyOrDefault(DatabaseVersion) to gracefully default to the minimum supported version.
    org.hibernate.dialect.DatabaseVersion.makeCopy(boolean)
    In dialect implementations, prefer DatabaseVersion.makeCopyOrDefault(DatabaseVersion) to gracefully default to the minimum supported version.
    org.hibernate.dialect.Dialect.getCheckCondition(String, long[])
    use Dialect.getCheckCondition(String, Long[]) instead
    org.hibernate.dialect.Dialect.getCurrentSchemaCommand()
    Since Hibernate now baselines on Java 17, Connection.getSchema() is always available directly. Never used internally.
    org.hibernate.dialect.Dialect.getDropTableString(String)
    No longer used
    org.hibernate.dialect.Dialect.getForUpdateString(LockMode, int)
    Use Dialect.getForUpdateString(LockMode,Timeout) instead
    org.hibernate.dialect.Dialect.getNativeIdentifierGeneratorStrategy()
    Use Dialect.getNativeValueGenerationStrategy() instead
    org.hibernate.dialect.Dialect.getNoColumnsInsertString()
    Override the method renderInsertIntoNoColumns() on the translator returned by this dialect.
    org.hibernate.dialect.Dialect.getReadLockString(int)
    Use Dialect.getReadLockString(Timeout) instead.
    org.hibernate.dialect.Dialect.getReadLockString(String, int)
    Use Dialect.getReadLockString(String, Timeout) instead.
    org.hibernate.dialect.Dialect.getSelectClauseNullString(int, TypeConfiguration)
    Use Dialect.getSelectClauseNullString(SqlTypedMapping, TypeConfiguration) instead
    org.hibernate.dialect.Dialect.getTemporaryTableDdlTransactionHandling()
    No dialect currently overrides this, so it's obsolete
    org.hibernate.dialect.Dialect.getTimeoutInSeconds(int)
    Use Timeouts.getTimeoutInSeconds(int) instead.
    org.hibernate.dialect.Dialect.getWriteLockString(int)
    Use Dialect.getWriteLockString(Timeout) instead.
    org.hibernate.dialect.Dialect.getWriteLockString(String, int)
    Use Dialect.getWriteLockString(String, Timeout) instead.
    org.hibernate.dialect.function.CommonFunctionFactory.crc32()
    org.hibernate.dialect.function.CommonFunctionFactory.md5()
    org.hibernate.dialect.function.CommonFunctionFactory.sha()
    org.hibernate.dialect.function.CommonFunctionFactory.sha1()
    org.hibernate.dialect.function.CommonFunctionFactory.sha2()
    org.hibernate.dialect.identity.H2FinalTableIdentityColumnSupport.render(TableInsert, Consumer<String>, Consumer<ColumnReference>, H2IdentityColumnSupport.InsertValuesHandler, SessionFactoryImplementor)
    org.hibernate.dialect.identity.H2IdentityColumnSupport.render(TableInsert, Consumer<String>, Consumer<ColumnReference>, H2IdentityColumnSupport.InsertValuesHandler, SessionFactoryImplementor)
    org.hibernate.dialect.identity.IdentityColumnSupport.appendIdentitySelectToInsert(String)
    Use IdentityColumnSupport.appendIdentitySelectToInsert(String, String) instead.
    org.hibernate.dialect.lock.LockingStrategy.lock(Object, Object, Object, int, EventSource)
    Use LockingStrategy.lock(Object, Object, Object, int, SharedSessionContractImplementor)
    org.hibernate.dialect.MySQLDialect.createVersion(DialectResolutionInfo)
    org.hibernate.dialect.MySQLDialect.getCharacterSetBytesPerCharacter(DatabaseMetaData)
    org.hibernate.dialect.MySQLServerConfiguration.fromDatabaseMetadata(DatabaseMetaData)
    Use MySQLServerConfiguration.fromDialectResolutionInfo(org.hibernate.engine.jdbc.dialect.spi.DialectResolutionInfo) instead.
    org.hibernate.dialect.sql.ast.H2SqlAstTranslator.visitReturningInsertStatement(TableInsertStandard)
    org.hibernate.engine.internal.Nullability.checkNullability(Object[], EntityPersister, boolean)
    Use Nullability.checkNullability(Object[], EntityPersister)
    org.hibernate.engine.jdbc.env.spi.JdbcEnvironment.getQualifiedObjectNameFormatter()
    Use a provided SqlStringGenerationContext instead.
    org.hibernate.engine.jdbc.Size.getLobMultiplier()
    org.hibernate.engine.jdbc.Size.setLobMultiplier(Size.LobMultiplier)
    org.hibernate.engine.spi.AbstractDelegatingSessionBuilder.connectionHandlingMode(PhysicalConnectionHandlingMode)
    org.hibernate.engine.spi.AbstractDelegatingSessionBuilder.statementInspector(StatementInspector)
    org.hibernate.engine.spi.AbstractDelegatingSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.connectionHandlingMode(PhysicalConnectionHandlingMode)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.connectionReleaseMode()
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.statementInspector(StatementInspector)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.CascadingActions.getAllElementsIterator(EventSource, CollectionType, Object)
    org.hibernate.engine.spi.CascadingActions.getLoadedElementsIterator(SharedSessionContractImplementor, CollectionType, Object)
    org.hibernate.engine.spi.PersistenceContext.getCollectionsByKey()
    this method should be removed; alternative methods are available that better express the intent, allowing for better optimisations. Not aggressively removing this as it's an SPI, but also useful for testing and other contexts which are not performance sensitive. N.B. This might return an immutable map: do not use for mutations!
    org.hibernate.engine.spi.PersistentAttributeInterceptor.attributeInitialized(String)
    Just as the method it overrides. Interceptors that deal with lazy state should implement BytecodeLazyAttributeInterceptor
    org.hibernate.engine.spi.PersistentAttributeInterceptor.getInitializedLazyAttributeNames()
    Just as the method it overrides. Interceptors that deal with lazy state should implement BytecodeLazyAttributeInterceptor
    org.hibernate.engine.spi.PersistentAttributeInterceptor.isAttributeLoaded(String)
    Interceptors that deal with * lazy state should implement BytecodeLazyAttributeInterceptor
    org.hibernate.engine.spi.SessionDelegatorBaseImpl.instantiate(String, Object)
    org.hibernate.engine.spi.SessionFactoryDelegatingImpl.getCollectionRolesByEntityParticipant(String)
    org.hibernate.engine.spi.SessionFactoryDelegatingImpl.getFilterDefinition(String)
    org.hibernate.engine.spi.SessionFactoryDelegatingImpl.getGenerator(String)
    org.hibernate.engine.spi.SessionFactoryDelegatingImpl.getMetamodel()
    org.hibernate.engine.spi.SessionFactoryImplementor.getFetchProfile(String)
    Use SqlAstCreationContext.getFetchProfile(String)
    org.hibernate.engine.spi.SessionFactoryImplementor.getGenerator(String)
    Only used in one place, will be removed
    org.hibernate.engine.spi.SessionLazyDelegator.createNamedQuery(String)
    org.hibernate.engine.spi.SessionLazyDelegator.createNativeQuery(String)
    org.hibernate.engine.spi.SessionLazyDelegator.createNativeQuery(String, String)
    org.hibernate.engine.spi.SessionLazyDelegator.createQuery(CriteriaDelete)
    org.hibernate.engine.spi.SessionLazyDelegator.createQuery(CriteriaUpdate)
    org.hibernate.engine.spi.SessionLazyDelegator.createQuery(String)
    org.hibernate.engine.spi.SessionLazyDelegator.getNamedNativeQuery(String)
    org.hibernate.engine.spi.SessionLazyDelegator.getNamedNativeQuery(String, String)
    org.hibernate.engine.spi.SessionLazyDelegator.getNamedQuery(String)
    org.hibernate.engine.spi.SessionLazyDelegator.replicate(Object, ReplicationMode)
    org.hibernate.engine.spi.SessionLazyDelegator.replicate(String, Object, ReplicationMode)
    org.hibernate.engine.spi.SharedSessionContractImplementor.asSessionImplementor()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.asStatelessSession()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.instantiate(String, Object)
    No longer used, replaced by SharedSessionContractImplementor.instantiate(EntityPersister, Object)
    org.hibernate.engine.spi.SharedSessionContractImplementor.isSessionImplementor()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionContractImplementor.isStatelessSession()
    No longer useful, since Java made downcasting safer
    org.hibernate.engine.spi.SharedSessionDelegatorBaseImpl.instantiate(String, Object)
    org.hibernate.envers.Audited.auditParents()
    Use @AuditOverride(forClass=SomeEntity.class) instead.
    org.hibernate.envers.AuditReader.getCurrentRevision(Class<T>, boolean)
    use RevisionListener instead. While this method is being deprecated, expect a new API for this in 6.0.
    org.hibernate.envers.boot.internal.EnversServiceImpl.getAuditStrategy()
    org.hibernate.envers.query.internal.impl.AbstractAuditQuery.setLockMode(LockMode)
    Instead use setLockOptions
    org.hibernate.envers.strategy.AuditStrategy.perform(Session, String, EnversService, Object, Object, Object)
    use AuditStrategy.perform(Session, String, Configuration, Object, Object, Object)
    org.hibernate.envers.strategy.AuditStrategy.performCollectionChange(Session, String, String, EnversService, PersistentCollectionChangeData, Object)
    use AuditStrategy.performCollectionChange(Session, String, String, Configuration, PersistentCollectionChangeData, Object)
    org.hibernate.envers.strategy.internal.ValidityAuditStrategy.setRevisionTimestampGetter(Getter)
    with no replacement.
    org.hibernate.event.service.spi.EventListenerGroup.clear()
    Use EventListenerGroup.clearListeners() instead, which doesn't also reset the registered DuplicationStrategys.
    org.hibernate.event.service.spi.EventListenerGroup.listeners()
    this is not the most efficient way for iterating the event listeners. See EventListenerGroup.fireEventOnEachListener(Object, BiConsumer) and its overloaded variants for better alternatives.
    org.hibernate.Filter.getFilterDefinition()
    There is no plan to remove this operation, but its use should be avoided since FilterDefinition is an SPI type, and so this operation is a layer-breaker.
    org.hibernate.grammars.graph.GraphLanguageLexer.getTokenNames()
    org.hibernate.grammars.graph.GraphLanguageParser.getTokenNames()
    org.hibernate.grammars.hql.HqlLexer.getTokenNames()
    org.hibernate.grammars.hql.HqlParser.getTokenNames()
    org.hibernate.grammars.importsql.SqlScriptLexer.getTokenNames()
    org.hibernate.grammars.importsql.SqlScriptParser.getTokenNames()
    org.hibernate.grammars.ordering.OrderingLexer.getTokenNames()
    org.hibernate.grammars.ordering.OrderingParser.getTokenNames()
    org.hibernate.graph.AttributeNode.makeKeySubGraph()
    This operation is not properly type safe. Note that graph.addAttributeNode(att).makeKeySubGraph() is a synonym for graph.addMapKeySubgraph(att).
    org.hibernate.graph.AttributeNode.makeKeySubGraph(Class<S>)
    This operation is not properly type safe. Note that graph.addAttributeNode(att).makeKeySubGraph(cl) is a synonym for graph.addTreatedMapKeySubgraph(att,cl).
    org.hibernate.graph.AttributeNode.makeSubGraph()
    This operation is not properly type safe. Note that graph.addAttributeNode(att).makeSubGraph() is a synonym for graph.addSubgraph(att).
    org.hibernate.graph.AttributeNode.makeSubGraph(Class<S>)
    This operation is not properly type safe. Note that graph.addAttributeNode(att).makeSubGraph(cl) is a synonym for graph.addTreatedSubgraph(att,cl).
    org.hibernate.graph.EntityGraphs.executeList(Query, EntityGraph<?>)
    Since it is not type safe and returns a raw type
    org.hibernate.graph.EntityGraphs.executeList(Query, EntityGraph<?>, String)
    Since it is not type safe, returns a raw type, and accepts a string
    org.hibernate.graph.EntityGraphs.executeList(Query, EntityGraph<?>, GraphSemantic)
    Since it is not type safe and returns a raw type
    org.hibernate.graph.EntityGraphs.executeList(TypedQuery<R>, EntityGraph<R>)
    Use EntityGraphs.setFetchGraph(TypedQuery, EntityGraph) instead
    org.hibernate.graph.EntityGraphs.executeList(TypedQuery<R>, EntityGraph<R>, String)
    Since it accepts a string instead of GraphSemantic
    org.hibernate.graph.EntityGraphs.executeList(TypedQuery<R>, EntityGraph<R>, GraphSemantic)
    Use EntityGraphs.setGraph(TypedQuery, EntityGraph, GraphSemantic) instead
    org.hibernate.graph.Graph.addKeySubgraph(Attribute<? super J, X>)
    org.hibernate.graph.Graph.addKeySubgraph(Attribute<? super J, X>, Class<? extends X>)
    org.hibernate.graph.Graph.addKeySubGraph(String)
    Use Graph.addKeySubgraph(String)
    org.hibernate.graph.Graph.addKeySubGraph(String, Class<AJ>)
    Use Graph.addKeySubgraph(String, Class)
    org.hibernate.graph.Graph.addKeySubGraph(MapPersistentAttribute<? super J, ? super AJ, ?>, Class<AJ>)
    Use Graph.addTreatedMapKeySubgraph(MapAttribute, Class)
    org.hibernate.graph.Graph.addPluralSubgraph(PluralAttribute<? super J, ?, AJ>)
    Graph.addElementSubgraph(PluralAttribute) was added in JPA 3.2, and so this method is no longer needed
    org.hibernate.graph.Graph.addSubgraph(Attribute<? super J, X>, Class<? extends X>)
    org.hibernate.graph.Graph.addSubGraph(String)
    Use Graph.addSubgraph(String)
    org.hibernate.graph.Graph.addSubGraph(String, Class<AJ>)
    Use Graph.addSubgraph(String, Class)
    org.hibernate.graph.Graph.addSubGraph(PersistentAttribute<? super J, ? super AJ>, Class<AJ>)
    Use Graph.addTreatedSubgraph(Attribute, Class)
    org.hibernate.graph.Graph.addSubGraph(PersistentAttribute<? super J, AJ>)
    Use Graph.addSubgraph(Attribute)
    org.hibernate.graph.Graph.findAttributeNode(String)
    Use Graph.getAttributeNode(String)
    org.hibernate.graph.Graph.findAttributeNode(PersistentAttribute<? super J, AJ>)
    Use Graph.getAttributeNode(Attribute)
    org.hibernate.graph.Graph.makeRootGraph(String, boolean)
    This will be removed
    org.hibernate.graph.Graph.makeSubGraph(boolean)
    This will be removed
    org.hibernate.graph.GraphSemantic.getJpaHintName()
    Use GraphSemantic.getJakartaHintName() instead
    org.hibernate.graph.internal.AttributeNodeImpl.makeKeySubGraph()
    org.hibernate.graph.internal.AttributeNodeImpl.makeKeySubGraph(Class<S>)
    org.hibernate.graph.internal.AttributeNodeImpl.makeSubGraph()
    org.hibernate.graph.internal.AttributeNodeImpl.makeSubGraph(Class<S>)
    org.hibernate.graph.internal.GraphImpl.makeRootGraph(String, boolean)
    org.hibernate.graph.internal.RootGraphImpl.makeRootGraph(String, boolean)
    org.hibernate.graph.internal.RootGraphImpl.makeSubGraph(boolean)
    org.hibernate.graph.internal.SubGraphImpl.makeSubGraph(boolean)
    org.hibernate.graph.RootGraph.addSubclassSubgraph(Class<? extends T>)
    Planned for removal in JPA 4
    org.hibernate.graph.RootGraph.makeRootGraph(String, boolean)
    org.hibernate.graph.RootGraph.makeSubGraph(boolean)
    org.hibernate.graph.spi.AttributeNodeImplementor.makeKeySubGraph()
    org.hibernate.graph.spi.AttributeNodeImplementor.makeKeySubGraph(Class<S>)
    org.hibernate.graph.spi.AttributeNodeImplementor.makeSubGraph()
    org.hibernate.graph.spi.AttributeNodeImplementor.makeSubGraph(Class<S>)
    org.hibernate.graph.spi.GraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.GraphImplementor.makeSubGraph(boolean)
    org.hibernate.graph.spi.RootGraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.RootGraphImplementor.makeSubGraph(boolean)
    org.hibernate.graph.spi.SubGraphImplementor.makeRootGraph(String, boolean)
    org.hibernate.graph.spi.SubGraphImplementor.makeSubGraph(boolean)
    org.hibernate.id.Configurable.configure(Type, Properties, ServiceRegistry)
    Use Configurable.configure(GeneratorCreationContext, Properties) instead
    org.hibernate.id.enhanced.DatabaseStructure.getAllSqlForTests()
    Exposed for tests only.
    org.hibernate.id.enhanced.DatabaseStructure.prepare(Optimizer)
    Use DatabaseStructure.configure(Optimizer) instead.
    org.hibernate.id.enhanced.SequenceStructure.getAllSqlForTests()
    org.hibernate.id.enhanced.TableGenerator.getAllSqlForTests()
    Exposed for tests only.
    org.hibernate.id.enhanced.TableStructure.getAllSqlForTests()
    org.hibernate.id.enhanced.TableStructure.prepare(Optimizer)
    org.hibernate.id.IdentifierGenerator.configure(Type, Properties, ServiceRegistry)
    since it overrides a deprecated method
    org.hibernate.id.IncrementGenerator.getAllSqlForTests()
    Exposed for tests only.
    org.hibernate.IdentifierLoadAccess.with(EntityGraph<T>)
    use IdentifierLoadAccess.withLoadGraph(jakarta.persistence.EntityGraph<T>)
    org.hibernate.IdentifierLoadAccess.with(LockOptions)
    Use one of IdentifierLoadAccess.with(LockMode), IdentifierLoadAccess.with(LockMode, PessimisticLockScope) and/or IdentifierLoadAccess.with(Timeout) instead.
    org.hibernate.Interceptor.onDelete(Object, Object, Object[], String[], Type[])
    Use Interceptor.onRemove(Object, Object, Object[], String[], Type[])
    org.hibernate.Interceptor.onSave(Object, Object, Object[], String[], Type[])
    Use Interceptor.onPersist(Object, Object, Object[], String[], Type[])
    org.hibernate.internal.AbstractSharedSessionContract.getNamedQuery(String)
    org.hibernate.internal.SessionFactoryImpl.configuredInterceptor(Interceptor, SessionFactoryOptions)
    use SessionFactoryImpl.configuredInterceptor(Interceptor, boolean, SessionFactoryOptions)
    org.hibernate.internal.SessionFactoryImpl.getGenerator(String)
    org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl.connectionHandlingMode(PhysicalConnectionHandlingMode)
    org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl.statementInspector(StatementInspector)
    org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl.tenantIdentifier(String)
    org.hibernate.internal.SessionFactoryImpl.StatelessSessionBuilderImpl.statementInspector(StatementInspector)
    org.hibernate.internal.SessionFactoryImpl.StatelessSessionBuilderImpl.tenantIdentifier(String)
    org.hibernate.internal.SessionImpl.get(Class<T>, Object, LockMode)
    org.hibernate.internal.SessionImpl.get(Class<T>, Object, LockOptions)
    org.hibernate.internal.SessionImpl.get(String, Object, LockMode)
    org.hibernate.internal.SessionImpl.get(String, Object, LockOptions)
    org.hibernate.internal.SessionImpl.instantiate(String, Object)
    org.hibernate.internal.StatelessSessionImpl.instantiate(String, Object)
    org.hibernate.internal.util.collections.ArrayHelper.newInstance(Class<T>, int)
    Use Array.newInstance(Class, int) instead.
    org.hibernate.internal.util.config.ConfigurationHelper.clone(Map<?, ?>)
    No longer used
    org.hibernate.internal.util.config.ConfigurationHelper.setIfNotNull(Object, String, Map<String, Object>)
    org.hibernate.internal.util.config.ConfigurationHelper.toMap(String, String, Map<?, ?>)
    No longer used
    org.hibernate.internal.util.config.ConfigurationHelper.toMap(String, String, Properties)
    No longer used
    org.hibernate.internal.util.ReflectHelper.classForName(String)
    Depending on context, either ClassLoaderService or ClassLoaderAccess should be preferred
    org.hibernate.internal.util.ReflectHelper.implementsInterface(Class<?>, Class<?>)
    No longer used
    org.hibernate.internal.util.StringHelper.generateAlias(String)
    No longer used
    org.hibernate.internal.util.StringHelper.generateAlias(String, int)
    No longer used
    org.hibernate.jpa.boot.spi.PersistenceUnitDescriptor.getTransactionType()
    since PersistenceUnitTransactionType will be removed in JPA 4
    org.hibernate.jpa.spi.JpaCompliance.isJpaCascadeComplianceEnabled()
    No longer has any effect.
    org.hibernate.jpa.spi.MutableJpaCompliance.setCascadeCompliance(boolean)
    Always enabled. See JpaCompliance.isJpaCascadeComplianceEnabled()
    org.hibernate.loader.ast.spi.BatchLoaderFactory.createEntityBatchLoader(int, EntityMappingType, SessionFactoryImplementor)
    Use BatchLoaderFactory.createEntityBatchLoader(int, EntityMappingType, LoadQueryInfluencers) instead
    org.hibernate.loader.ast.spi.Loadable.isAffectedByEnabledFilters(LoadQueryInfluencers)
    Use Loadable.isAffectedByEnabledFilters(LoadQueryInfluencers, boolean) instead
    org.hibernate.loader.ast.spi.Loadable.isAffectedByInfluencers(LoadQueryInfluencers)
    Use Loadable.isAffectedByInfluencers(LoadQueryInfluencers, boolean) instead
    org.hibernate.LockMode.toLockOptions()
    As LockOptions will become an SPI, this method will be removed with no replacement
    org.hibernate.LockOptions.getAliasLockIterator()
    use LockOptions.getAliasSpecificLocks()
    org.hibernate.mapping.CheckConstraint.constraintString()
    use CheckConstraint.constraintString(Dialect) instead.
    org.hibernate.mapping.Collection.getTypeParameters()
    org.hibernate.mapping.Collection.setTypeParameters(Properties)
    org.hibernate.mapping.Index.getColumnOrderMap()
    use Index.getSelectableOrderMap()
    org.hibernate.mapping.Index.getColumns()
    use Index.getSelectables()
    org.hibernate.mapping.KeyValue.createGenerator(Dialect, RootClass)
    No longer called, except from tests. Use KeyValue.createGenerator(Dialect, RootClass, Property, GeneratorSettings)
    org.hibernate.mapping.PersistentClass.isExplicitPolymorphism()
    No longer supported
    org.hibernate.mapping.Property.addCallbackDefinitions(List<CallbackDefinition>)
    See discussion in EmbeddableCallback.
    org.hibernate.mapping.Property.getCallbackDefinitions()
    See discussion in EmbeddableCallback.
    org.hibernate.mapping.RootClass.setExplicitPolymorphism(boolean)
    No longer supported
    org.hibernate.mapping.RootClass.setPolymorphic(boolean)
    No longer supported
    org.hibernate.mapping.Selectable.getAlias(Dialect)
    new read-by-position paradigm means that these generated aliases are no longer needed
    org.hibernate.mapping.Selectable.getAlias(Dialect, Table)
    new read-by-position paradigm means that these generated aliases are no longer needed
    org.hibernate.mapping.SimpleValue.createGenerator(Dialect, RootClass)
    org.hibernate.mapping.Table.addCheckConstraint(String)
    org.hibernate.mapping.Table.addInitCommand(InitCommand)
    Use Table.addInitCommand(Function) instead.
    org.hibernate.mapping.Table.createForeignKey(String, List<Column>, String, String)
    org.hibernate.mapping.Table.qualify(String, String, String)
    Should build a QualifiedTableName then use SqlStringGenerationContext.format(QualifiedTableName).
    org.hibernate.metamodel.mapping.AssociationKey.getTable()
    org.hibernate.metamodel.mapping.DiscriminatedAssociationModelPart.getDiscriminatorPart()
    Use Discriminable.getDiscriminatorMapping() instead.
    org.hibernate.metamodel.mapping.EntityMappingType.extractConcreteTypeStateValues(Map<AttributeMapping, DomainResultAssembler>, RowProcessingState)
    org.hibernate.metamodel.mapping.EntityMappingType.getContributor()
    See Contributable.getContributor()
    org.hibernate.metamodel.mapping.EntityMappingType.isExplicitPolymorphism()
    No longer supported
    org.hibernate.metamodel.mapping.FilterRestrictable.applyFilterRestrictions(Consumer<Predicate>, TableGroup, boolean, Map<String, Filter>, SqlAstCreationState)
    Use FilterRestrictable.applyFilterRestrictions(Consumer, TableGroup, boolean, Map, boolean, SqlAstCreationState) instead
    org.hibernate.metamodel.mapping.internal.MutableAttributeMappingList.getSingularAttributeMapping(int)
    should be removed
    org.hibernate.metamodel.mapping.ordering.ast.OrderingExpression.apply(QuerySpec, TableGroup, String, String, SortDirection, NullPrecedence, SqlAstCreationState)
    org.hibernate.metamodel.mapping.Restrictable.applyBaseRestrictions(Consumer<Predicate>, TableGroup, boolean, Map<String, Filter>, Set<String>, SqlAstCreationState)
    Use Restrictable.applyBaseRestrictions(Consumer, TableGroup, boolean, Map, boolean, Set, SqlAstCreationState) instead
    org.hibernate.metamodel.MappingMetamodel.locateEntityDescriptor(Class<?>)
    No longer used
    org.hibernate.metamodel.MappingMetamodel.streamCollectionDescriptors()
    org.hibernate.metamodel.MappingMetamodel.streamEntityDescriptors()
    org.hibernate.metamodel.model.domain.internal.EntityPersisterConcurrentMap.convertToMap()
    Higly inefficient - do not use; this exists to support other deprecated methods and will be removed.
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.locateEntityDescriptor(Class<?>)
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.streamCollectionDescriptors()
    org.hibernate.metamodel.model.domain.internal.MappingMetamodelImpl.streamEntityDescriptors()
    org.hibernate.metamodel.model.domain.ManagedDomainType.findAttributeInSuperTypes(String)
    Use ManagedDomainType.findAttribute(String)
    org.hibernate.metamodel.RuntimeMetamodels.getEntityMappingType(Class<?>)
    Only called from tests
    org.hibernate.metamodel.RuntimeMetamodels.getEntityMappingType(String)
    Only called from tests
    org.hibernate.metamodel.RuntimeMetamodels.getImportedName(String)
    No longer called
    org.hibernate.metamodel.RuntimeMetamodels.getPluralAttributeMapping(String)
    No longer called
    org.hibernate.MultiIdentifierLoadAccess.with(EntityGraph<T>)
    use MultiIdentifierLoadAccess.withLoadGraph(jakarta.persistence.EntityGraph<T>)
    org.hibernate.MultiIdentifierLoadAccess.with(LockOptions)
    Use one of MultiIdentifierLoadAccess.with(LockMode), MultiIdentifierLoadAccess.with(LockMode, PessimisticLockScope) and/or MultiIdentifierLoadAccess.with(Timeout) instead.
    org.hibernate.NaturalIdLoadAccess.with(LockOptions)
    Use one of NaturalIdLoadAccess.with(LockMode), NaturalIdLoadAccess.with(LockMode, PessimisticLockScope) and/or NaturalIdLoadAccess.with(Timeout) instead.
    org.hibernate.NaturalIdMultiLoadAccess.with(EntityGraph<T>)
    use NaturalIdMultiLoadAccess.withLoadGraph(jakarta.persistence.EntityGraph<T>)
    org.hibernate.NaturalIdMultiLoadAccess.with(LockOptions)
    Use one of NaturalIdMultiLoadAccess.with(LockMode), NaturalIdMultiLoadAccess.with(LockMode, PessimisticLockScope) and/or NaturalIdMultiLoadAccess.with(Timeout) instead.
    org.hibernate.persister.collection.AbstractCollectionPersister.getIdentifierGenerator()
    org.hibernate.persister.collection.CollectionPersister.getCollectionType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here (generally), PluralAttributeMapping
    org.hibernate.persister.collection.CollectionPersister.getElementColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getElementType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getElementDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getIdentifierColumnAlias(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getIdentifierGenerator()
    use CollectionPersister.getGenerator()
    org.hibernate.persister.collection.CollectionPersister.getIdentifierType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getIdentifierDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getIndexColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getIndexType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getIndexDescriptor()
    org.hibernate.persister.collection.CollectionPersister.getKeyColumnAliases(String)
    Read-by-position makes this irrelevant. Currently still used by SQLQueryParser
    org.hibernate.persister.collection.CollectionPersister.getKeyType()
    Hibernate is moving away from Type. Corresponding mapping metamodel calls should be used instead - here, PluralAttributeMapping.getKeyDescriptor()
    org.hibernate.persister.entity.AbstractEntityPersister.getIdentifierGenerator()
    org.hibernate.persister.entity.AbstractEntityPersister.getPropertyType(String)
    by the supertypes
    org.hibernate.persister.entity.AbstractEntityPersister.getSubclassColumnAliasClosure()
    Hibernate no longer uses aliases to read from result sets
    org.hibernate.persister.entity.AbstractEntityPersister.getSubclassFormulaAliasClosure()
    Hibernate no longer uses aliases to read from result sets
    org.hibernate.persister.entity.AbstractEntityPersister.getSubclassPropertyColumnAliases(String, String)
    Hibernate no longer uses aliases to read from result sets
    org.hibernate.persister.entity.AbstractEntityPersister.initSubclassPropertyAliasesMap(PersistentClass)
    Hibernate no longer uses aliases to read from result sets
    org.hibernate.persister.entity.EntityPersister.canExtractIdOutOfEntity()
    This feature is no longer supported
    org.hibernate.persister.entity.EntityPersister.delete(Object, Object, Object, SharedSessionContractImplementor)
    Use DeleteCoordinator.delete(java.lang.Object, java.lang.Object, java.lang.Object, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.getDiscriminatorColumnName()
    Use SelectableMapping.getSelectionExpression() instead
    org.hibernate.persister.entity.EntityPersister.getIdentifierGenerator()
    use EntityPersister.getGenerator()
    org.hibernate.persister.entity.EntityPersister.getPropertyType(String)
    See ManagedMappingType.findAttributeMapping(String)
    org.hibernate.persister.entity.EntityPersister.getPropertyValue(Object, int)
    Use EntityPersister.getValue(java.lang.Object, int) instead
    org.hibernate.persister.entity.EntityPersister.getPropertyValues(Object)
    Use EntityPersister.getValues(java.lang.Object) instead
    org.hibernate.persister.entity.EntityPersister.getSynchronizationSpaces()
    No longer called
    org.hibernate.persister.entity.EntityPersister.getTableName(int)
    Only ever used from places where we really want to use
    • SelectStatement (select generator)
    • InsertSelectStatement
    • UpdateStatement
    • DeleteStatement
    org.hibernate.persister.entity.EntityPersister.getTypeDiscriminatorMetadata()
    Since DiscriminatorMetadata is deprecated
    org.hibernate.persister.entity.EntityPersister.hasCache()
    Use EntityPersister.canReadFromCache() and/or EntityPersister.canWriteToCache() depending on need
    org.hibernate.persister.entity.EntityPersister.insert(Object[], Object, SharedSessionContractImplementor)
    Use InsertCoordinator.insert(Object, Object[], SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.insert(Object, Object[], Object, SharedSessionContractImplementor)
    Use InsertCoordinator.insert(Object, Object, Object[], SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.load(Object, Object, LockMode, SharedSessionContractImplementor, Boolean)
    Use EntityPersister.load(Object, Object, LockMode, SharedSessionContractImplementor)
    org.hibernate.persister.entity.EntityPersister.lock(Object, Object, Object, LockMode, EventSource)
    Use EntityPersister.lock(Object, Object, Object, LockMode, SharedSessionContractImplementor)
    org.hibernate.persister.entity.EntityPersister.lock(Object, Object, Object, LockOptions, EventSource)
    Use EntityPersister.lock(Object, Object, Object, LockOptions, SharedSessionContractImplementor)
    org.hibernate.persister.entity.EntityPersister.merge(Object, Object[], int[], boolean, Object[], Object, Object, Object, SharedSessionContractImplementor)
    Use UpdateCoordinator.update(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object[], java.lang.Object, java.lang.Object[], int[], boolean, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.multiLoad(Object[], EventSource, MultiIdLoadOptions)
    Use EntityPersister.multiLoad(Object[], SharedSessionContractImplementor, MultiIdLoadOptions)
    org.hibernate.persister.entity.EntityPersister.processInsertGeneratedProperties(Object, Object, Object[], SharedSessionContractImplementor)
    Use EntityPersister.processInsertGeneratedProperties(Object, Object, Object[], GeneratedValues, SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.processUpdateGeneratedProperties(Object, Object, Object[], SharedSessionContractImplementor)
    Use EntityPersister.processUpdateGeneratedProperties(Object, Object, Object[], GeneratedValues, SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.EntityPersister.setPropertyValue(Object, int, Object)
    Use EntityPersister.setValue(java.lang.Object, int, java.lang.Object) instead
    org.hibernate.persister.entity.EntityPersister.setPropertyValues(Object, Object[])
    Use EntityPersister.setValues(java.lang.Object, java.lang.Object[]) instead
    org.hibernate.persister.entity.EntityPersister.toColumns(String)
    No longer used in ORM core
    org.hibernate.persister.entity.EntityPersister.update(Object, Object[], int[], boolean, Object[], Object, Object, Object, SharedSessionContractImplementor)
    Use UpdateCoordinator.update(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object[], java.lang.Object, java.lang.Object[], int[], boolean, org.hibernate.engine.spi.SharedSessionContractImplementor) instead.
    org.hibernate.persister.entity.mutation.EntityMutationTarget.getIdentityInsertDelegate()
    use EntityMutationTarget.getInsertDelegate() instead
    org.hibernate.persister.entity.mutation.InsertCoordinatorStandard.getInsertBatchKey()
    Use InsertCoordinatorStandard.getBatchKey()
    org.hibernate.persister.entity.SingleTableEntityPersister.getSubclassClosure()
    No longer used.
    org.hibernate.procedure.internal.ProcedureCallImpl.setLockOptions(LockOptions)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(int, Calendar, TemporalType)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(int, Date, TemporalType)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(String, Calendar, TemporalType)
    org.hibernate.procedure.internal.ProcedureCallImpl.setParameter(String, Date, TemporalType)
    org.hibernate.procedure.ProcedureCall.setFlushMode(FlushModeType)
    org.hibernate.procedure.ProcedureCall.setParameter(int, Calendar, TemporalType)
    org.hibernate.procedure.ProcedureCall.setParameter(int, Date, TemporalType)
    org.hibernate.procedure.ProcedureCall.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.procedure.ProcedureCall.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.procedure.ProcedureCall.setParameter(String, Calendar, TemporalType)
    org.hibernate.procedure.ProcedureCall.setParameter(String, Date, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(int, Calendar, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(int, Date, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(String, Calendar, TemporalType)
    org.hibernate.procedure.spi.ProcedureCallImplementor.setParameter(String, Date, TemporalType)
    org.hibernate.proxy.pojo.bytebuddy.ByteBuddyProxyHelper.buildUnloadedProxy(Class<?>, Class<?>[])
    Use ByteBuddyProxyHelper.buildUnloadedProxy(TypePool, TypeDefinition, Collection) instead.
    org.hibernate.query.CommonQueryContract.getFlushMode()
    use CommonQueryContract.getQueryFlushMode()
    org.hibernate.query.CommonQueryContract.getHibernateFlushMode()
    use CommonQueryContract.getQueryFlushMode()
    org.hibernate.query.CommonQueryContract.setFlushMode(FlushModeType)
    use CommonQueryContract.setQueryFlushMode(QueryFlushMode)
    org.hibernate.query.CommonQueryContract.setHibernateFlushMode(FlushMode)
    use CommonQueryContract.setQueryFlushMode(QueryFlushMode)
    org.hibernate.query.CommonQueryContract.setParameter(int, Instant, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(int, Calendar, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(int, Date, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(Parameter<Date>, Date, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(String, Instant, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(String, Calendar, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.CommonQueryContract.setParameter(String, Date, TemporalType)
    since TemporalType is deprecated
    org.hibernate.query.criteria.CriteriaDefinition.multiselect(Selection<?>...)
    org.hibernate.query.criteria.CriteriaDefinition.multiselect(List<Selection<?>>)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAll(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludes(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayContainsAllNullable(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIncludesNullable(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlaps(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersects(Object[], Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(Expression<T[]>, Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(Expression<T[]>, T[])
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Expression, Object[])
    org.hibernate.query.criteria.HibernateCriteriaBuilder.arrayOverlapsNullable(T[], Expression<T[]>)
    Replaced with HibernateCriteriaBuilder.arrayIntersectsNullable(Object[], jakarta.persistence.criteria.Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAll(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludes(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionContainsAllNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIncludesNullable(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlaps(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersects(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Expression, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Expression, Collection)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.collectionOverlapsNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    Replaced with HibernateCriteriaBuilder.collectionIntersectsNullable(Collection, Expression)
    org.hibernate.query.criteria.HibernateCriteriaBuilder.sort(JpaExpression<?>, SortDirection, NullPrecedence)
    Use HibernateCriteriaBuilder.sort(JpaExpression, SortDirection, Nulls) instead
    org.hibernate.query.criteria.HibernateCriteriaBuilder.sort(JpaExpression<?>, SortDirection, NullPrecedence, boolean)
    Use HibernateCriteriaBuilder.sort(JpaExpression, SortDirection, Nulls, boolean) instead
    org.hibernate.query.criteria.JpaCriteriaQuery.multiselect(Selection<?>...)
    org.hibernate.query.criteria.JpaCriteriaQuery.multiselect(List<Selection<?>>)
    org.hibernate.query.criteria.JpaFrom.join(Subquery<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Subquery, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(Subquery<X>, SqmJoinType, boolean)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Subquery, org.hibernate.query.common.JoinType, boolean)
    org.hibernate.query.criteria.JpaFrom.join(Class<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(Class, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(EntityDomainType<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(EntityDomainType, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.join(JpaCteCriteria<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.join(JpaCteCriteria, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.JpaFrom.joinLateral(Subquery<X>, SqmJoinType)
    This method is a layer-breaker, leaking the SQM type SqmJoinType onto an API. It will be removed. Use JpaFrom.joinLateral(Subquery, org.hibernate.query.common.JoinType)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAll(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayContainsAllNullable(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlaps(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(Expression<T[]>, T[])
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.arrayOverlapsNullable(T[], Expression<T[]>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAll(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionContainsAllNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlaps(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Expression<? extends Collection<E>>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Expression<? extends Collection<E>>, Collection<? extends E>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.collectionOverlapsNullable(Collection<E>, Expression<? extends Collection<? extends E>>)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.sort(JpaExpression<?>, SortDirection, NullPrecedence)
    org.hibernate.query.criteria.spi.HibernateCriteriaBuilderDelegate.sort(JpaExpression<?>, SortDirection, NullPrecedence, boolean)
    org.hibernate.query.hql.spi.SqmQueryImplementor.applyFetchGraph(RootGraph)
    org.hibernate.query.hql.spi.SqmQueryImplementor.applyLoadGraph(RootGraph)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setFlushMode(FlushModeType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setHibernateFlushMode(FlushMode)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setLockOptions(LockOptions)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(int, Instant, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(int, Date, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(String, Instant, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setParameter(String, Date, TemporalType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setResultTransformer(ResultTransformer<T>)
    org.hibernate.query.MutationQuery.setFlushMode(FlushModeType)
    org.hibernate.query.MutationQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.MutationQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.MutationQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.NativeQuery.getLockOptions()
    org.hibernate.query.NativeQuery.setFlushMode(FlushModeType)
    org.hibernate.query.NativeQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.NativeQuery.setLockOptions(LockOptions)
    org.hibernate.query.NativeQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.NativeQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.NativeQuery.setResultTransformer(ResultTransformer<S>)
    org.hibernate.query.NullPrecedence.isDefaultOrdering(SortDirection, NullOrdering)
    No longer called
    org.hibernate.query.Order.getAttribute()
    org.hibernate.query.Order.getAttributeName()
    org.hibernate.query.Order.getDirection()
    org.hibernate.query.Order.getElement()
    org.hibernate.query.Order.getEntityClass()
    org.hibernate.query.Order.getNullPrecedence()
    org.hibernate.query.Order.isCaseInsensitive()
    org.hibernate.query.Query.applyFetchGraph(RootGraph)
    Use Query.setEntityGraph(EntityGraph, GraphSemantic) which is more type safe
    org.hibernate.query.Query.applyGraph(RootGraph, GraphSemantic)
    Use Query.setEntityGraph(EntityGraph, GraphSemantic) which is more type safe
    org.hibernate.query.Query.applyLoadGraph(RootGraph)
    Use Query.setEntityGraph(EntityGraph, GraphSemantic) which is more type safe
    org.hibernate.query.Query.getLockOptions()
    Since LockOptions is transitioning to a new role as an SPI.
    org.hibernate.query.Query.setFlushMode(FlushModeType)
    org.hibernate.query.Query.setHibernateFlushMode(FlushMode)
    org.hibernate.query.Query.setLockOptions(LockOptions)
    Use one of Query.setLockMode(LockModeType), SelectionQuery.setHibernateLockMode(org.hibernate.LockMode), Query.setLockScope(jakarta.persistence.PessimisticLockScope) and/or Query.setTimeout(jakarta.persistence.Timeout) instead.
    org.hibernate.query.Query.setParameter(int, Instant, TemporalType)
    org.hibernate.query.Query.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.Query.setParameter(int, Date, TemporalType)
    org.hibernate.query.Query.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.Query.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.Query.setParameter(String, Instant, TemporalType)
    org.hibernate.query.Query.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.Query.setParameter(String, Date, TemporalType)
    org.hibernate.query.Query.setResultTransformer(ResultTransformer<T>)
    Use Query.setTupleTransformer(org.hibernate.query.TupleTransformer<T>) or Query.setResultListTransformer(org.hibernate.query.ResultListTransformer<R>)
    org.hibernate.query.QueryProducer.createNamedQuery(String)
    use QueryProducer.createNamedQuery(String, Class)
    org.hibernate.query.QueryProducer.createNamedSelectionQuery(String)
    use QueryProducer.createNamedSelectionQuery(String, Class)
    org.hibernate.query.QueryProducer.createNativeQuery(String)
    use QueryProducer.createNativeQuery(String, Class)
    org.hibernate.query.QueryProducer.createNativeQuery(String, String)
    use QueryProducer.createNativeQuery(String, String, Class)
    org.hibernate.query.QueryProducer.createQuery(CriteriaDelete)
    use QueryProducer.createMutationQuery(CriteriaDelete)
    org.hibernate.query.QueryProducer.createQuery(CriteriaUpdate)
    use QueryProducer.createMutationQuery(CriteriaUpdate)
    org.hibernate.query.QueryProducer.createQuery(String)
    The overloaded form QueryProducer.createQuery(String, Class) which takes a result type is strongly recommended in preference to this method, since it returns a typed Query object, and because it is able to use the given result type to infer the select list, and even sometimes the from clause. Alternatively, QueryProducer.createSelectionQuery(String, Class) is preferred for queries, and QueryProducer.createMutationQuery(String) for insert, update, and delete statements.
    org.hibernate.query.QueryProducer.createSelectionQuery(String)
    The overloaded form QueryProducer.createSelectionQuery(String, Class) which takes a result type is strongly recommended in preference to this method, since it returns a typed SelectionQuery object, and because it is able to use the given result type to infer the select list, and even sometimes the from clause.
    org.hibernate.query.QueryProducer.getNamedNativeQuery(String)
    use QueryProducer.createNamedQuery(String, Class)
    org.hibernate.query.QueryProducer.getNamedNativeQuery(String, String)
    use QueryProducer.createNamedQuery(String, Class)
    org.hibernate.query.QueryProducer.getNamedQuery(String)
    use QueryProducer.createNamedQuery(String, Class)
    org.hibernate.query.SelectionQuery.getLockOptions()
    Since LockOptions is transitioning to a new role as an SPI.
    org.hibernate.query.SelectionQuery.setFlushMode(FlushModeType)
    org.hibernate.query.SelectionQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.SelectionQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.SelectionQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(int, Instant, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(int, Date, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(String, Instant, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractCommonQueryContract.setParameter(String, Date, TemporalType)
    org.hibernate.query.spi.AbstractQuery.getLockOptions()
    org.hibernate.query.spi.AbstractQuery.setLockOptions(LockOptions)
    org.hibernate.query.spi.AbstractQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.getLockOptions()
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.spi.AbstractSelectionQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.spi.QueryEngineOptions.getImmutableEntityUpdateQueryHandlingMode()
    Since ImmutableEntityUpdateQueryHandlingMode is deprecated. Use QueryEngineOptions.allowImmutableEntityUpdate() instead.
    org.hibernate.query.spi.QueryImplementor.setResultTransformer(ResultTransformer<T>)
    org.hibernate.query.spi.QueryParameterBindingTypeResolver.getMappingMetamodel()
    org.hibernate.query.spi.QueryParameterBindingTypeResolver.getTypeConfiguration()
    org.hibernate.query.spi.QueryProducerImplementor.createNamedQuery(String)
    org.hibernate.query.spi.QueryProducerImplementor.createNativeQuery(String)
    org.hibernate.query.spi.QueryProducerImplementor.createNativeQuery(String, String)
    org.hibernate.query.spi.QueryProducerImplementor.createQuery(CriteriaDelete)
    org.hibernate.query.spi.QueryProducerImplementor.createQuery(CriteriaUpdate)
    org.hibernate.query.spi.QueryProducerImplementor.createQuery(String)
    org.hibernate.query.spi.QueryProducerImplementor.getNamedNativeQuery(String)
    org.hibernate.query.spi.QueryProducerImplementor.getNamedNativeQuery(String, String)
    org.hibernate.query.spi.SqmQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.spi.SqmQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.spi.SqmQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setLockOptions(LockOptions)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(int, Date, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setParameter(String, Date, TemporalType)
    org.hibernate.query.sql.internal.NativeQueryImpl.setResultTransformer(ResultTransformer<S>)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setFlushMode(FlushModeType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setHibernateFlushMode(FlushMode)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setLockOptions(LockOptions)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(int, Date, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setParameter(String, Date, TemporalType)
    org.hibernate.query.sql.spi.NativeQueryImplementor.setResultTransformer(ResultTransformer<T>)
    org.hibernate.query.sqm.function.FunctionRenderer.render(SqlAppender, List<? extends SqlAstNode>, SqlAstTranslator<?>)
    Use FunctionRenderer.render(SqlAppender, List, ReturnableType, SqlAstTranslator) instead
    org.hibernate.query.sqm.internal.QuerySqmImpl.setLockOptions(LockOptions)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(int, Date, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.QuerySqmImpl.setParameter(String, Date, TemporalType)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.getImmutableEntityUpdateQueryHandlingMode()
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(Class<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(Class<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(SqmExpressible<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.internal.SqmCriteriaNodeBuilder.tuple(SqmExpressible<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(int, Date, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sqm.internal.SqmSelectionQueryImpl.setParameter(String, Date, TemporalType)
    org.hibernate.query.sqm.internal.SqmUtil.isFkOptimizationAllowed(SqmPath<?>)
    Use SqmUtil.isFkOptimizationAllowed(SqmPath, EntityAssociationMapping) instead
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAll(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAll(Expression<T[]>, T[])
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAll(T[], Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAllNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAllNullable(Expression<T[]>, T[])
    org.hibernate.query.sqm.NodeBuilder.arrayContainsAllNullable(T[], Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayOverlaps(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayOverlaps(Expression<T[]>, T[])
    org.hibernate.query.sqm.NodeBuilder.arrayOverlaps(T[], Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayOverlapsNullable(Expression<T[]>, Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.arrayOverlapsNullable(Expression<T[]>, T[])
    org.hibernate.query.sqm.NodeBuilder.arrayOverlapsNullable(T[], Expression<T[]>)
    org.hibernate.query.sqm.NodeBuilder.getImmutableEntityUpdateQueryHandlingMode()
    org.hibernate.query.sqm.NodeBuilder.sort(JpaExpression<?>, SortDirection, NullPrecedence)
    org.hibernate.query.sqm.NodeBuilder.sort(JpaExpression<?>, SortDirection, NullPrecedence, boolean)
    org.hibernate.query.sqm.NodeBuilder.tuple(Class<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.NodeBuilder.tuple(Class<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.NodeBuilder.tuple(SqmExpressible<R>, List<? extends SqmExpression<?>>)
    org.hibernate.query.sqm.NodeBuilder.tuple(SqmExpressible<R>, SqmExpression<?>...)
    org.hibernate.query.sqm.produce.function.ArgumentsValidator.validate(List<? extends SqmTypedNode<?>>, String, TypeConfiguration)
    Implement ArgumentsValidator.validate(List, String, BindingContext) instead
    org.hibernate.query.sqm.produce.function.FunctionArgumentTypeResolver.resolveFunctionArgumentType(SqmFunction<?>, int, SqmToSqlAstConverter)
    Use FunctionArgumentTypeResolver.resolveFunctionArgumentType(List, int, SqmToSqlAstConverter) instead
    org.hibernate.query.sqm.produce.function.FunctionReturnTypeResolver.resolveFunctionReturnType(ReturnableType<?>, Supplier<MappingModelExpressible<?>>, List<? extends SqmTypedNode<?>>, TypeConfiguration)
    Use FunctionReturnTypeResolver.resolveFunctionReturnType(ReturnableType, SqmToSqlAstConverter, List, TypeConfiguration) instead
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.getFlushMode()
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.getHibernateFlushMode()
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.getLockOptions()
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setFlushMode(FlushModeType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setHibernateFlushMode(FlushMode)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(int, Date, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sqm.spi.DelegatingSqmSelectionQueryImplementor.setParameter(String, Date, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(int, Instant, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(int, Calendar, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(int, Date, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(Parameter<Calendar>, Calendar, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(Parameter<Date>, Date, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(String, Instant, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(String, Calendar, TemporalType)
    org.hibernate.query.sqm.SqmSelectionQuery.setParameter(String, Date, TemporalType)
    org.hibernate.query.sqm.tree.domain.SqmManagedDomainType.findAttributeInSuperTypes(String)
    org.hibernate.query.sqm.tree.select.SqmSelectStatement.multiselect(Selection<?>...)
    org.hibernate.query.sqm.tree.select.SqmSelectStatement.multiselect(List<Selection<?>>)
    org.hibernate.query.TypedParameterValue.getType()
    use TypedParameterValue.type
    org.hibernate.query.TypedParameterValue.getTypeReference()
    use TypedParameterValue.type
    org.hibernate.query.TypedParameterValue.getValue()
    use TypedParameterValue.value
    org.hibernate.resource.jdbc.spi.JdbcSessionOwner.getEventManager()
    Use JdbcSessionOwner.getEventMonitor().
    org.hibernate.ScrollableResults.getRowNumber()
    Use ScrollableResults.getPosition()
    org.hibernate.ScrollableResults.setRowNumber(int)
    Use ScrollableResults.position(int)
    org.hibernate.Session.createNamedQuery(String)
    org.hibernate.Session.createQuery(CriteriaDelete)
    use QueryProducer.createMutationQuery(CriteriaDelete)
    org.hibernate.Session.createQuery(CriteriaUpdate)
    use QueryProducer.createMutationQuery(CriteriaUpdate)
    org.hibernate.Session.createQuery(String)
    org.hibernate.Session.get(Class<T>, Object)
    Because the semantics of this method may change in a future release. Use Session.find(Class, Object) instead.
    org.hibernate.Session.get(Class<T>, Object, LockMode)
    Use EntityManager.find(Class, Object, FindOption...) instead.
    org.hibernate.Session.get(Class<T>, Object, LockOptions)
    This method will be removed. Use EntityManager.find(Class, Object, FindOption...) instead.
    org.hibernate.Session.get(String, Object)
    The semantics of this method may change in a future release. Use SessionFactory.createGraphForDynamicEntity(String) together with EntityManager.find(EntityGraph, Object, FindOption...) to load dynamic entities.
    org.hibernate.Session.get(String, Object, LockMode)
    The semantics of this method may change in a future release.
    org.hibernate.Session.get(String, Object, LockOptions)
    This method will be removed. Use SessionFactory.createGraphForDynamicEntity(String) together with EntityManager.find(EntityGraph, Object, FindOption...) to load dynamic entities.
    org.hibernate.Session.lock(Object, LockOptions)
    This method will be removed. Use EntityManager.lock(Object, LockModeType, LockOption...) instead
    org.hibernate.Session.refresh(Object, LockOptions)
    This method will be removed. Use EntityManager.refresh(Object, RefreshOption...) instead
    org.hibernate.Session.replicate(Object, ReplicationMode)
    With no real replacement. For some use cases try StatelessSession.upsert(Object).
    org.hibernate.Session.replicate(String, Object, ReplicationMode)
    With no real replacement. For some use cases try StatelessSession.upsert(Object).
    org.hibernate.SessionBuilder.connectionHandlingMode(PhysicalConnectionHandlingMode)
    This operation exposes the SPI type PhysicalConnectionHandlingMode and is therefore a layer-breaker. Use SessionBuilder.connectionHandling(ConnectionAcquisitionMode, ConnectionReleaseMode) instead.
    org.hibernate.SessionBuilder.statementInspector(StatementInspector)
    This operation exposes the SPI type StatementInspector and is therefore a layer-breaker. Use SessionBuilder.statementInspector(UnaryOperator) instead.
    org.hibernate.SessionBuilder.tenantIdentifier(String)
    Use SessionBuilder.tenantIdentifier(Object) instead
    org.hibernate.SessionFactory.getFilterDefinition(String)
    There is no plan to remove this operation, but its use should be avoided since FilterDefinition is an SPI type, and so this operation is a layer-breaker.
    org.hibernate.SessionFactory.getSessionFactoryOptions()
    There is no plan to remove this operation, but its use should be avoided since SessionFactoryOptions is an SPI type, and so this operation is a layer-breaker.
    org.hibernate.SharedSessionBuilder.connectionHandlingMode(PhysicalConnectionHandlingMode)
    org.hibernate.SharedSessionBuilder.connectionReleaseMode()
    use SharedSessionBuilder.connectionHandling(org.hibernate.ConnectionAcquisitionMode, org.hibernate.ConnectionReleaseMode) instead.
    org.hibernate.SharedSessionBuilder.statementInspector(StatementInspector)
    org.hibernate.SharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.SimpleNaturalIdLoadAccess.with(LockOptions)
    Use one of SimpleNaturalIdLoadAccess.with(LockMode), SimpleNaturalIdLoadAccess.with(LockMode, PessimisticLockScope) and/or SimpleNaturalIdLoadAccess.with(Timeout) instead.
    org.hibernate.sql.ast.spi.SqlAstCreationContext.getSessionFactory()
    org.hibernate.sql.exec.spi.JdbcOperationQuery.getAppliedParameters()
    No longer called
    org.hibernate.sql.model.ast.MutationGroup.forEachTableMutation(BiConsumer<Integer, M>)
    org.hibernate.sql.model.ast.MutationGroup.getTableMutation(String)
    org.hibernate.sql.model.MutationOperationGroup.forEachOperation(BiConsumer<Integer, O>)
    Will be removed. Use the other methods to visit each operation.
    org.hibernate.sql.model.MutationOperationGroup.hasMatching(BiFunction<Integer, O, Boolean>)
    Will be removed. Use the other methods to visit each operation.
    org.hibernate.sql.results.caching.QueryCachePutManager.finishUp(SharedSessionContractImplementor)
    Use QueryCachePutManager.finishUp(int, SharedSessionContractImplementor) instead
    org.hibernate.sql.results.internal.InitializersList.asList()
    org.hibernate.sql.results.jdbc.spi.JdbcValuesMetadata.resolveType(int, JavaType<J>, SessionFactoryImplementor)
    The existence of this method encourages people to pass around references to the SessionFactoryImplementor when they don't need it
    org.hibernate.stat.Statistics.getStartTime()
    use Statistics.getStart()
    org.hibernate.StatelessSessionBuilder.statementInspector(StatementInspector)
    This operation exposes the SPI typeStatementInspector and is therefore a layer-breaker. Use StatelessSessionBuilder.statementInspector(UnaryOperator) instead.
    org.hibernate.StatelessSessionBuilder.tenantIdentifier(String)
    Use StatelessSessionBuilder.tenantIdentifier(Object) instead
    org.hibernate.tool.schema.internal.StandardTableExporter.applyComments(Table, QualifiedTableName, List<String>)
    Use StandardTableExporter.applyComments(Table, String, List) instead.
    org.hibernate.tuple.entity.EntityMetamodel.isExplicitPolymorphism()
    No longer supported
    org.hibernate.tuple.IdentifierAttribute.getIdentifierGenerator()
    org.hibernate.tuple.NonIdentifierAttribute.isDirtyCheckable(boolean)
    Use NonIdentifierAttribute.isDirtyCheckable() instead
    org.hibernate.type.CollectionType.getElementsIterator(Object, SharedSessionContractImplementor)
    use CollectionType.getElementsIterator(Object)
    org.hibernate.type.descriptor.DateTimeUtils.appendAsTime(SqlAppender, Calendar)
    Use DateTimeUtils.appendAsLocalTime(SqlAppender, Calendar) instead
    org.hibernate.type.descriptor.DateTimeUtils.appendAsTime(SqlAppender, Date)
    Use DateTimeUtils.appendAsLocalTime(SqlAppender, Date) instead
    org.hibernate.type.descriptor.DateTimeUtils.roundToDefaultPrecision(T, Dialect)
    Use DateTimeUtils.adjustToDefaultPrecision(Temporal, Dialect) instead
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(SqlExpressible, Long, Integer, Integer)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(JdbcType, JavaType<?>)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getCastTypeName(JdbcType, JavaType<?>, Long, Integer, Integer)
    Use DdlType.getCastTypeName(Size, SqlExpressible, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getRawTypeName()
    not appropriate for named enum or array types
    org.hibernate.type.descriptor.sql.DdlType.getRawTypeNames()
    not appropriate for named enum or array types
    org.hibernate.type.descriptor.sql.DdlType.getTypeName(Long, Integer, Integer)
    not appropriate for named enum or array types, use DdlType.getTypeName(Size, Type, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.DdlType.getTypeName(Size)
    not appropriate for named enum or array types, use DdlType.getTypeName(Size, Type, DdlTypeRegistry) instead
    org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType.getRawTypeNames()
    org.hibernate.type.descriptor.sql.spi.DdlTypeRegistry.getTypeName(int, Long, Integer, Integer)
    not appropriate for named enum or array types, use DdlTypeRegistry.getTypeName(int, Size, Type) instead
    org.hibernate.type.descriptor.sql.spi.DdlTypeRegistry.getTypeName(int, Size)
    not appropriate for named enum or array types, use DdlTypeRegistry.getTypeName(int, Size, Type) instead
    org.hibernate.type.spi.TypeConfiguration.getJpaCompliance()
    No longer used
    org.hibernate.type.spi.TypeConfiguration.getMetadataBuildingContext()
    This operation is not very typesafe, and we're migrating away from its use
    org.hibernate.type.spi.TypeConfiguration.getServiceRegistry()
    This simply isn't a very sensible place to hang the ServiceRegistry
    org.hibernate.type.spi.TypeConfiguration.getSessionFactory()
    This operation is not very typesafe, and we're migrating away from its use
    org.hibernate.type.Type.beforeAssemble(Serializable, SharedSessionContractImplementor)
    Is not called anymore
    org.hibernate.usertype.UserType.nullSafeGet(ResultSet, int, SharedSessionContractImplementor, Object)
    Implement UserType.nullSafeGet(ResultSet, int, WrapperOptions)
    org.hibernate.usertype.UserType.nullSafeSet(PreparedStatement, J, int, SharedSessionContractImplementor)
    Implement UserType.nullSafeSet(PreparedStatement, Object, int, WrapperOptions)
  • Deprecated Constructors
    Constructor
    Description
    org.hibernate.bytecode.enhance.internal.bytebuddy.CoreTypePool(String...)
    used by Quarkus
    org.hibernate.dialect.Dialect()
    provide a DatabaseVersion
    org.hibernate.engine.internal.Nullability(SharedSessionContractImplementor)
    org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentImpl(ServiceRegistryImplementor, Dialect, DatabaseMetaData)
    currently used by Hibernate Reactive This version of the constructor should handle the case in which we do actually have the option to access the DatabaseMetaData, but since Hibernate Reactive is currently not making use of it we take a shortcut.
    org.hibernate.engine.jdbc.Size(Integer, Integer, Integer, Size.LobMultiplier)
    in favor of Size(Integer, Integer, Long)
    org.hibernate.engine.jdbc.Size(Integer, Integer, Long, Size.LobMultiplier)
    in favor of Size(Integer, Integer, Long)
    org.hibernate.event.spi.RefreshEvent(String, Object, LockOptions, EventSource)
    use RefreshEvent(Object, LockOptions, EventSource) instead.
    org.hibernate.internal.util.collections.StandardStack(Class<T>)
    use the default constructor instead
    org.hibernate.internal.util.collections.StandardStack(Class<T>, T)
    use StandardStack(Object) instead.
    org.hibernate.LockOptions(LockMode, int)
    Use LockOptions(LockMode, Timeout) instead
    org.hibernate.LockOptions(LockMode, int, PessimisticLockScope)
    Use LockOptions(LockMode, Timeout, PessimisticLockScope) instead
    org.hibernate.mapping.Table()
    org.hibernate.query.SemanticException(String)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.query.SemanticException(String, Exception)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.query.sqm.InterpretationException(String)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.query.sqm.tree.select.SqmSortSpecification(SqmExpression, SortDirection, NullPrecedence)
    Use SqmSortSpecification(SqmExpression, SortDirection, Nulls) instead
    org.hibernate.query.sqm.tree.update.SqmUpdateStatement(SqmRoot<T>, NodeBuilder)
    was previously used for HQL. Use SqmUpdateStatement(NodeBuilder) instead
    org.hibernate.query.sqm.tree.update.SqmUpdateStatement(SqmRoot<T>, SqmQuerySource, NodeBuilder)
    was previously used for Criteria. Use SqmUpdateStatement(Class, SqmCriteriaNodeBuilder) instead.
    org.hibernate.QueryException(Exception)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.QueryException(String)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.QueryException(String, Exception)
    this constructor does not carry information about the query which caused the failure
    org.hibernate.sql.ast.tree.cte.SearchClauseSpecification(CteColumn, SortDirection, NullPrecedence)
    Use SearchClauseSpecification(CteColumn,SortDirection,Nulls) instead
    org.hibernate.sql.ast.tree.select.SortSpecification(Expression, SortDirection, NullPrecedence)
    Use SortSpecification(Expression, SortDirection, Nulls) instead
    org.hibernate.type.AnyType(TypeConfiguration, Type, Type, boolean)
    Use AnyType(TypeConfiguration, MetaType, Type, boolean) instead
  • Deprecated Enum Constants
    Enum Constant
    Description
    org.hibernate.annotations.CascadeType.REPLICATE
    since Session.replicate(Object, ReplicationMode) is deprecated
    org.hibernate.bytecode.enhance.spi.UnsupportedEnhancementStrategy.LEGACY
    Use UnsupportedEnhancementStrategy.SKIP or UnsupportedEnhancementStrategy.FAIL instead.
  • Deprecated Annotation Interface Elements
    Annotation Interface Element
    Description
    org.hibernate.annotations.AttributeAccessor.value()
    use AttributeAccessor.strategy()
    org.hibernate.annotations.GenericGenerator.strategy()
    use GenericGenerator.type() for typesafety
    org.hibernate.annotations.NamedNativeQuery.flushMode()
    use NamedNativeQuery.flush()
    org.hibernate.annotations.NamedQuery.flushMode()
    use NamedQuery.flush()
    org.hibernate.annotations.SQLDelete.check()
    use SQLDelete.verify() with an Expectation class
    org.hibernate.annotations.SQLDeleteAll.check()
    use SQLDeleteAll.verify() with an Expectation class
    org.hibernate.annotations.SQLInsert.check()
    use SQLInsert.verify() with an Expectation class
    org.hibernate.annotations.SQLUpdate.check()
    use SQLUpdate.verify() with an Expectation class
    org.hibernate.envers.Audited.auditParents()
    Use @AuditOverride(forClass=SomeEntity.class) instead.

Copyright © 2001-2025 Red Hat, Inc. All Rights Reserved.