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.callable()
    Calling database procedures and functions through NativeQuery is no longer supported; use NamedStoredProcedureQuery instead.
    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.annotations.Target
    use annotation members of JPA association mapping annotations, for example, OneToMany.targetEntity()
    org.hibernate.BaseSessionEventListener
    Just implement SessionEventListener directly.
    org.hibernate.boot.model.naming.CamelCaseToUnderscoresNamingStrategy
    Use PhysicalNamingStrategySnakeCaseImpl.
    org.hibernate.boot.model.source.spi.PluralAttributeMapKeySource.getMapKeyNature()
    No longer used
    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.enableJpaCascadeCompliance(boolean)
    No longer has any effect.
    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.isAllowRefreshDetachedEntity()
    with no replacement.
    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.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.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.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.DialectDelegateWrapper.getCheckCondition(String, long[])
    org.hibernate.dialect.DialectDelegateWrapper.getNativeIdentifierGeneratorStrategy()
    org.hibernate.dialect.H2SqlAstTranslator.visitReturningInsertStatement(TableInsertStandard)
    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.SybaseDialect.jtdsDriver
    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.spi.AbstractDelegatingSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.CascadingAction.noCascade(EventSource, Object, EntityPersister, Type, int)
    No longer used
    org.hibernate.engine.spi.CascadingAction.requiresNoCascadeChecking()
    No longer used
    org.hibernate.engine.spi.CascadingActions.DELETE
    Use CascadingActions.REMOVE
    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.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.internal.AbstractSharedSessionContract.addResultType(Class<T>, NativeQueryImplementor<T>)
    Use NativeQueryImpl(String, Class, SharedSessionContractImplementor) instead
    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.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.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.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.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.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.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.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.NullPrecedence.isDefaultOrdering(SortDirection, NullOrdering)
    No longer called
    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.sqm.function.FunctionRenderer.render(SqlAppender, List<? extends SqlAstNode>, SqlAstTranslator<?>)
    Use FunctionRenderer.render(SqlAppender, List, ReturnableType, SqlAstTranslator) instead
    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.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.SqmPathSource.findSubPathSource(String, JpaMetamodel)
    Use SqmPathSource.findSubPathSource(String, boolean) instead
    org.hibernate.query.sqm.SqmPathSource.getSubPathSource(String, JpaMetamodel)
    Use #SqmPathSource.getSubPathSource(String, boolean) 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.SessionBuilder.tenantIdentifier(String)
    Use SessionBuilder.tenantIdentifier(Object) instead
    org.hibernate.SharedSessionBuilder.tenantIdentifier(String)
    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.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.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
    Moved to Dialect
  • 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.transaction.spi.TransactionImplementor
    This is no longer needed
    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.metamodel.model.domain.EmbeddedDomainType
    Use EmbeddableDomainType instead. Originally intended to describe the actual usage of an embeddable (the embedded) because it was intended to include the mapping (column, etc) information. However, that causes us to need multiple embeddable instances per embeddable class.
    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.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.dialect.hint.IndexQueryHintHandler
    Moved to Dialect
    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.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.QueryHints
    Use AvailableHints instead
    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.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.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.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.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
  • 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
    org.hibernate.annotations.Target
    use annotation members of JPA association mapping annotations, for example, OneToMany.targetEntity()
  • Deprecated Fields
    Field
    Description
    org.hibernate.bytecode.internal.BytecodeProviderInitiator.BYTECODE_PROVIDER_NAME_BYTEBUDDY
    Register a BytecodeProvider through Java services.
    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.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_CREATE_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.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.SKIP_LOCKED
    use LockMode.UPGRADE_SKIPLOCKED
    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.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.callable()
    Calling database procedures and functions through NativeQuery is no longer supported; use NamedStoredProcedureQuery instead.
    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.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.enableJpaCascadeCompliance(boolean)
    org.hibernate.boot.MetadataSources.getXmlBindings()
    Prefer MetadataSources.getMappingXmlBindings() and/or MetadataSources.getHbmXmlBindings()
    org.hibernate.boot.model.internal.QueryBinder.createStoredProcedure(NamedNativeQueryDefinition.Builder<?>, MetadataBuildingContext, Supplier<RuntimeException>)
    User should use NamedStoredProcedureQuery instead
    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.enableJpaCascadeCompliance(boolean)
    No longer has any effect.
    org.hibernate.boot.spi.AbstractDelegatingSessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.AdditionalMappingContributions.contributeBinding(JaxbHbmHibernateMapping)
    hbm.xml mapping file support is deprecated. Use extended orm.xml bindings 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.MetadataBuildingOptions.getManagedTypeRepresentationResolver()
    no longer called
    org.hibernate.boot.spi.SessionFactoryBuilderImplementor.disableRefreshDetachedEntity()
    with no replacement.
    org.hibernate.boot.spi.SessionFactoryOptions.isAllowRefreshDetachedEntity()
    with no replacement.
    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.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.getDropTableString(String)
    No longer used
    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.DialectDelegateWrapper.getCheckCondition(String, long[])
    org.hibernate.dialect.DialectDelegateWrapper.getNativeIdentifierGeneratorStrategy()
    org.hibernate.dialect.DialectDelegateWrapper.getNoColumnsInsertString()
    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.H2SqlAstTranslator.visitReturningInsertStatement(TableInsertStandard)
    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.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.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.tenantIdentifier(String)
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.connectionReleaseMode()
    org.hibernate.engine.spi.AbstractDelegatingSharedSessionBuilder.tenantIdentifier(String)
    org.hibernate.engine.spi.CascadingAction.noCascade(EventSource, Object, EntityPersister, Type, int)
    No longer used
    org.hibernate.engine.spi.CascadingAction.requiresNoCascadeChecking()
    No longer used
    org.hibernate.engine.spi.LoadQueryInfluencers.getInternalFetchProfile()
    Use LoadQueryInfluencers.getEnabledCascadingFetchProfile() instead
    org.hibernate.engine.spi.LoadQueryInfluencers.setInternalFetchProfile(String)
    Use LoadQueryInfluencers.setEnabledCascadingFetchProfile(org.hibernate.loader.ast.spi.CascadingFetchProfile) instead
    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.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.getFlushMode()
    there's no good reason to expose this here
    org.hibernate.engine.spi.SharedSessionContractImplementor.isAutoCloseSessionEnabled()
    there's no reason to expose this here
    org.hibernate.engine.spi.SharedSessionContractImplementor.setAutoClear(boolean)
    there's no good reason to expose this here
    org.hibernate.engine.spi.SharedSessionContractImplementor.shouldAutoClose()
    there's no reason to expose this here
    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.exception.internal.StandardSQLExceptionConverter.addDelegate(SQLExceptionConversionDelegate)
    use StandardSQLExceptionConverter(SQLExceptionConversionDelegate...)
    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.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.fromJpaHintName(String)
    Use GraphSemantic.fromHintName(java.lang.String) instead
    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(RootGraph<T>)
    use IdentifierLoadAccess.withLoadGraph(org.hibernate.graph.RootGraph<T>)
    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.addResultType(Class<T>, NativeQueryImplementor<T>)
    Use NativeQueryImpl(String, Class, SharedSessionContractImplementor) instead
    org.hibernate.internal.SessionFactoryImpl.configuredInterceptor(Interceptor, SessionFactoryOptions)
    use SessionFactoryImpl.configuredInterceptor(Interceptor, boolean, SessionFactoryOptions)
    org.hibernate.internal.SessionFactoryImpl.getGenerator(String)
    org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl.tenantIdentifier(String)
    org.hibernate.internal.SessionFactoryImpl.StatelessSessionBuilderImpl.tenantIdentifier(String)
    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.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.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.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.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.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.MultiIdentifierLoadAccess.with(RootGraph<T>)
    use MultiIdentifierLoadAccess.withLoadGraph(org.hibernate.graph.RootGraph<T>)
    org.hibernate.NaturalIdMultiLoadAccess.with(RootGraph<T>)
    use NaturalIdMultiLoadAccess.withLoadGraph(org.hibernate.graph.RootGraph<T>)
    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.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.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.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.ProcedureCall.setFlushMode(FlushModeType)
    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.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.hql.spi.SqmQueryImplementor.setFlushMode(FlushModeType)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setHibernateFlushMode(FlushMode)
    org.hibernate.query.hql.spi.SqmQueryImplementor.setResultTransformer(ResultTransformer<T>)
    org.hibernate.query.MutationQuery.setFlushMode(FlushModeType)
    org.hibernate.query.MutationQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.NativeQuery.setFlushMode(FlushModeType)
    org.hibernate.query.NativeQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.NativeQuery.setResultTransformer(ResultTransformer<S>)
    org.hibernate.query.NullPrecedence.isDefaultOrdering(SortDirection, NullOrdering)
    No longer called
    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.setFlushMode(FlushModeType)
    org.hibernate.query.Query.setHibernateFlushMode(FlushMode)
    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.setFlushMode(FlushModeType)
    org.hibernate.query.SelectionQuery.setHibernateFlushMode(FlushMode)
    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.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.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.SqmUtil.isFkOptimizationAllowed(SqmPath<?>)
    Use SqmUtil.isFkOptimizationAllowed(SqmPath, EntityAssociationMapping) instead
    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.SqmPathSource.findSubPathSource(String, JpaMetamodel)
    Use SqmPathSource.findSubPathSource(String, boolean) instead
    org.hibernate.query.sqm.SqmPathSource.getSubPathSource(String, JpaMetamodel)
    Use #SqmPathSource.getSubPathSource(String, boolean) instead
    org.hibernate.query.sqm.SqmSelectionQuery.setHibernateFlushMode(FlushMode)
    org.hibernate.query.sqm.tree.select.SqmSelectStatement.multiselect(Selection<?>...)
    org.hibernate.query.sqm.tree.select.SqmSelectStatement.multiselect(List<Selection<?>>)
    org.hibernate.resource.jdbc.spi.JdbcSessionOwner.getEventManager()
    Use JdbcSessionOwner.getEventMonitor().
    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)
    The semantics of this method may change in a future release. Use Session.find(Class, Object, LockMode) instead.
    org.hibernate.Session.get(Class<T>, Object, LockOptions)
    The semantics of this method may change in a future release. Use Session.find(Class, Object, LockOptions) 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)
    The semantics of this method may change in a future release.
    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.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.connectionReleaseMode()
    use SharedSessionBuilder.connectionHandlingMode() instead.
    org.hibernate.SharedSessionBuilder.tenantIdentifier(String)
    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.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.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.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.exception.internal.StandardSQLExceptionConverter()
    use StandardSQLExceptionConverter(SQLExceptionConversionDelegate...)
    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.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.callable()
    Calling database procedures and functions through NativeQuery is no longer supported; use NamedStoredProcedureQuery instead.
    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

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