Hibernate ORM Aggregated Javadoc

Hibernate provides:
  • a native API centered around SessionFactory and Session,
  • an implementation of the Java (or Jakarta) Persistence API (JPA), and
  • a set of mapping annotations which augment the O/R mapping annotations defined by JPA, and which may be used with either API.

Native API

Along with SessionFactory and Session, applications using the native API will often make use of the following interfaces:

JPA

The JPA interfaces are defined by the JPA specification. For details see the latest specification along with jakarta.persistence.

Note that since Hibernate 5.2, the native API extends the JPA API rather than wrapping it (for example,SessionFactory extends EntityManagerFactory).

Mapping annotations

See org.hibernate.annotations.

Note about package categories

Hibernate categorizes packages into a number of groups based on intended consumers:
  • API - classes to which application code will generally bind directly. These are generally classes which do not have "spi" nor "internal" in their package path and are not under the "org.hibernate.testing" package
  • SPI - classes to which integrator developers will commonly bind directly in order to develop extensions to Hibernate, or to alter its behavior in some way. These are generally under packages with "spi" in the package path.
  • Testing Support - classes from the hibernate-testing artifact used in building Hibernate test cases. These are classes under the "org.hibernate.testing" package

Complete Hibernate documentation may be found online at http://hibernate.org/orm/documentation/.
Packages 
Package Description
org.hibernate  
org.hibernate.action.internal
Internals for action processing.
org.hibernate.action.spi
Defines SPI hooks into the ActionQueue.
org.hibernate.agroal.internal
Implementation of ConnectionProvider using Agroal.
org.hibernate.annotations
Package containing all Hibernate's specific annotations.
org.hibernate.boot
This package contains the contracts that make up the Hibernate native bootstrapping API (building a SessionFactory).
org.hibernate.boot.archive.internal
The internals of archive scanning support
org.hibernate.boot.archive.scan.internal  
org.hibernate.boot.archive.scan.spi  
org.hibernate.boot.archive.spi
Defines the SPI for support of "scanning" of "archives".
org.hibernate.boot.cfgxml.internal  
org.hibernate.boot.cfgxml.spi  
org.hibernate.boot.internal  
org.hibernate.boot.jaxb  
org.hibernate.boot.jaxb.cfg.spi  
org.hibernate.boot.jaxb.hbm.internal
JAXB details.
org.hibernate.boot.jaxb.hbm.spi  
org.hibernate.boot.jaxb.hbm.transform  
org.hibernate.boot.jaxb.internal  
org.hibernate.boot.jaxb.internal.stax
Contains basic support for Java XML Processing (JAXP) via Streaming API for XML (StAX)
org.hibernate.boot.jaxb.mapping  
org.hibernate.boot.jaxb.mapping.marshall  
org.hibernate.boot.jaxb.spi  
org.hibernate.boot.model
Package defining Hibernate's boot-time metamodel, which is an incrementally built understanding of the application's domain model (its entities, attributes, etc).
org.hibernate.boot.model.convert.internal  
org.hibernate.boot.model.convert.spi  
org.hibernate.boot.model.naming
Represents a proposed new approach to allowing hooks into the process of determining the name of database objects (tables, columns, constraints, etc).
org.hibernate.boot.model.process.internal  
org.hibernate.boot.model.process.spi  
org.hibernate.boot.model.relational  
org.hibernate.boot.model.relational.internal  
org.hibernate.boot.model.source.internal  
org.hibernate.boot.model.source.internal.annotations  
org.hibernate.boot.model.source.internal.hbm  
org.hibernate.boot.model.source.spi  
org.hibernate.boot.query  
org.hibernate.boot.registry
Defines service registry contracts application are likely to want to utilize for configuring Hibernate behavior.
org.hibernate.boot.registry.classloading.internal
The class loading service internals.
org.hibernate.boot.registry.classloading.spi
The class loading service SPI.
org.hibernate.boot.registry.internal
The internals for building service registries.
org.hibernate.boot.registry.selector
Defines a feature-set around named registration of implementations of various contracts and the ability to select those implementations.
org.hibernate.boot.registry.selector.internal
Internals for building StrategySelector
org.hibernate.boot.registry.selector.spi
Defines actual contract used for strategy selection : StrategySelector.
org.hibernate.boot.spi  
org.hibernate.boot.xsd
Support for XSD handling, specifically for ORM mappings (Hibernate's `hbm.xml` and JPA's `orm.xml`) and config files (Hibernate's `cfg.xml` and JPA's `persistence.xml`)
org.hibernate.bytecode  
org.hibernate.bytecode.enhance.internal.bytebuddy
package containing bytecode enhancement code (internals)
org.hibernate.bytecode.enhance.internal.tracker
specialized classes to keep track of changes
org.hibernate.bytecode.enhance.spi
package defining bytecode code enhancement (instrumentation) support.
org.hibernate.bytecode.enhance.spi.interceptor
interceptor implementations
org.hibernate.bytecode.internal  
org.hibernate.bytecode.internal.bytebuddy
Byte Buddy support internals
org.hibernate.bytecode.internal.none  
org.hibernate.bytecode.spi
Package defining bytecode code enhancement (instrumentation) support.
org.hibernate.c3p0.internal
Implementation of ConnectionProvider using the c3p0 Connection pool.
org.hibernate.cache  
org.hibernate.cache.cfg.internal  
org.hibernate.cache.cfg.spi  
org.hibernate.cache.internal
Internal implementations and support for second-level caching.
org.hibernate.cache.jcache
Hibernate caching provider for JSR-107 compliant caches.
org.hibernate.cache.jcache.internal  
org.hibernate.cache.spi
Defines the integration aspect of Hibernate's second-level caching allowing "caching back ends" to be plugged in as a caching provider.
org.hibernate.cache.spi.access  
org.hibernate.cache.spi.entry  
org.hibernate.cache.spi.support
Package intended for simplifying the worked needed to implement a caching provider.
org.hibernate.cfg  
org.hibernate.cfg.annotations  
org.hibernate.cfg.annotations.reflection
Defines the capability to merge mapping information from both annotations and orm.xml sources into a unified set of metadata in the Hibernate commons-annotations model.
org.hibernate.cfg.annotations.reflection.internal  
org.hibernate.cfg.beanvalidation  
org.hibernate.cfg.internal  
org.hibernate.classic  
org.hibernate.collection.internal
Internal implementations and support for persistent collections
org.hibernate.collection.spi
SPI definitions for persistent collections
org.hibernate.context
Defines support for "current session" feature.
org.hibernate.context.internal
Internal implementations and support around "current session" handling.
org.hibernate.context.spi
SPI level contracts around "current session" support.
org.hibernate.dialect  
org.hibernate.dialect.function  
org.hibernate.dialect.hint  
org.hibernate.dialect.identity  
org.hibernate.dialect.lock
Support for Dialect-specific locking strategies
org.hibernate.dialect.pagination
Support for Dialect-specific pagination strategies
org.hibernate.dialect.sequence  
org.hibernate.dialect.temptable  
org.hibernate.dialect.unique
Support for Dialect-specific unique constraint definition
org.hibernate.engine  
org.hibernate.engine.config.internal
Internal support for the configuration service implementation
org.hibernate.engine.config.spi
SPI Package for the configuration service.
org.hibernate.engine.internal
Support for many of the internal workings of Hibernate.
org.hibernate.engine.jdbc
Support for various aspects of JDBC interaction
org.hibernate.engine.jdbc.batch.internal
Internals for JDBC batching support.
org.hibernate.engine.jdbc.batch.spi
Defines contracts for JDBC batching support.
org.hibernate.engine.jdbc.connections.internal
Internals for accessing JDBC Connections
org.hibernate.engine.jdbc.connections.spi
Defines contracts for accessing JDBC Connections
org.hibernate.engine.jdbc.cursor.internal
Internals for JDBC REF_CURSOR support.
org.hibernate.engine.jdbc.cursor.spi
Defines contracts for JDBC REF_CURSOR support.
org.hibernate.engine.jdbc.dialect.internal
Internal support for Dialect resolution (from JDBC metadata) and Dialect building.
org.hibernate.engine.jdbc.dialect.spi
Contracts supporting Dialect resolution (from JDBC metadata) and Dialect building.
org.hibernate.engine.jdbc.env.internal  
org.hibernate.engine.jdbc.env.spi  
org.hibernate.engine.jdbc.internal
Internals for supporting various aspects of JDBC interaction
org.hibernate.engine.jdbc.spi
SPI contracts for supporting various aspects of JDBC interaction
org.hibernate.engine.jndi
Support for JNDI within Hibernate
org.hibernate.engine.jndi.internal
Internal contracts defining the JNDI support within Hibernate
org.hibernate.engine.jndi.spi
The SPI contracts for Hibernate JNDI support
org.hibernate.engine.profile
Models the fetch profiles defined by the application
org.hibernate.engine.query  
org.hibernate.engine.query.internal  
org.hibernate.engine.query.spi
Defines support for query plans and stored metadata about queries
org.hibernate.engine.spi  
org.hibernate.engine.transaction.internal  
org.hibernate.engine.transaction.internal.jta  
org.hibernate.engine.transaction.jta.platform.internal  
org.hibernate.engine.transaction.jta.platform.spi  
org.hibernate.engine.transaction.spi  
org.hibernate.envers  
org.hibernate.envers.boot  
org.hibernate.envers.boot.internal  
org.hibernate.envers.boot.model  
org.hibernate.envers.boot.registry.classloading  
org.hibernate.envers.boot.spi  
org.hibernate.envers.configuration  
org.hibernate.envers.configuration.internal  
org.hibernate.envers.configuration.internal.metadata  
org.hibernate.envers.configuration.internal.metadata.reader  
org.hibernate.envers.enhanced  
org.hibernate.envers.event.spi  
org.hibernate.envers.exception  
org.hibernate.envers.function  
org.hibernate.envers.internal  
org.hibernate.envers.internal.entities  
org.hibernate.envers.internal.entities.mapper  
org.hibernate.envers.internal.entities.mapper.id  
org.hibernate.envers.internal.entities.mapper.relation  
org.hibernate.envers.internal.entities.mapper.relation.component  
org.hibernate.envers.internal.entities.mapper.relation.lazy  
org.hibernate.envers.internal.entities.mapper.relation.lazy.initializor  
org.hibernate.envers.internal.entities.mapper.relation.lazy.proxy  
org.hibernate.envers.internal.entities.mapper.relation.query  
org.hibernate.envers.internal.reader  
org.hibernate.envers.internal.revisioninfo  
org.hibernate.envers.internal.synchronization  
org.hibernate.envers.internal.synchronization.work  
org.hibernate.envers.internal.tools  
org.hibernate.envers.internal.tools.graph  
org.hibernate.envers.internal.tools.query  
org.hibernate.envers.query  
org.hibernate.envers.query.criteria  
org.hibernate.envers.query.criteria.internal  
org.hibernate.envers.query.internal.impl  
org.hibernate.envers.query.internal.property  
org.hibernate.envers.query.order  
org.hibernate.envers.query.order.internal  
org.hibernate.envers.query.projection  
org.hibernate.envers.query.projection.internal  
org.hibernate.envers.strategy  
org.hibernate.envers.strategy.internal  
org.hibernate.envers.strategy.spi  
org.hibernate.envers.tools  
org.hibernate.event.internal  
org.hibernate.event.service.internal  
org.hibernate.event.service.spi  
org.hibernate.event.spi  
org.hibernate.exception  
org.hibernate.exception.internal  
org.hibernate.exception.spi  
org.hibernate.grammars.graph  
org.hibernate.grammars.hql  
org.hibernate.grammars.importsql  
org.hibernate.grammars.ordering  
org.hibernate.graph
Hibernate's (extended) support for JPA's entity graphs
org.hibernate.graph.internal  
org.hibernate.graph.internal.parse  
org.hibernate.graph.spi  
org.hibernate.hikaricp.internal
Implementation of ConnectionProvider using HikariCP.
org.hibernate.id  
org.hibernate.id.enhanced
Enhanced/improved versions of table and sequence based identifier generators targeting portability and unified configuration
org.hibernate.id.factory  
org.hibernate.id.factory.internal  
org.hibernate.id.factory.spi  
org.hibernate.id.insert  
org.hibernate.id.uuid  
org.hibernate.integrator.internal  
org.hibernate.integrator.spi  
org.hibernate.internal  
org.hibernate.internal.build  
org.hibernate.internal.log  
org.hibernate.internal.util
Internal utility classes
org.hibernate.internal.util.beans  
org.hibernate.internal.util.collections  
org.hibernate.internal.util.compare  
org.hibernate.internal.util.config  
org.hibernate.internal.util.io  
org.hibernate.internal.util.securitymanager  
org.hibernate.internal.util.type  
org.hibernate.internal.util.xml  
org.hibernate.jdbc  
org.hibernate.jpa  
org.hibernate.jpa.boot.internal  
org.hibernate.jpa.boot.spi  
org.hibernate.jpa.event.internal
Internal details of implementing support for JPA callbacks
org.hibernate.jpa.event.spi
The SPI contracts for supporting JPA lifecycle callbacks.
org.hibernate.jpa.internal
Defines Hibernate implementation of Java Persistence specification.
org.hibernate.jpa.internal.enhance  
org.hibernate.jpa.internal.util  
org.hibernate.jpa.spi  
org.hibernate.jpamodelgen
The main package of this annotation processor.
org.hibernate.jpamodelgen.annotation
Implementation of the model classes backed by annotations.
org.hibernate.jpamodelgen.model  
org.hibernate.jpamodelgen.util
Helper classes for string and type processing as well as access type detection.
org.hibernate.jpamodelgen.util.xml
XML helper classes.
org.hibernate.jpamodelgen.xml
Implementation of the model classes backed by annotations.
org.hibernate.jpamodelgen.xml.jaxb  
org.hibernate.loader  
org.hibernate.loader.access  
org.hibernate.loader.ast.internal  
org.hibernate.loader.ast.spi  
org.hibernate.loader.entity  
org.hibernate.loader.internal  
org.hibernate.mapping  
org.hibernate.metadata
This package defines an API for accessing the Hibernate runtime metamodel.
org.hibernate.metamodel  
org.hibernate.metamodel.internal  
org.hibernate.metamodel.mapping
Hibernate's run-time mapping model.
org.hibernate.metamodel.mapping.internal  
org.hibernate.metamodel.mapping.ordering
Support for set and map ordering
org.hibernate.metamodel.mapping.ordering.ast  
org.hibernate.metamodel.model.convert.internal  
org.hibernate.metamodel.model.convert.spi  
org.hibernate.metamodel.model.domain
Hibernate extensions to and implementations of the JPA metamodel
org.hibernate.metamodel.model.domain.internal  
org.hibernate.metamodel.model.domain.spi  
org.hibernate.metamodel.relational  
org.hibernate.metamodel.spi  
org.hibernate.persister.collection  
org.hibernate.persister.entity  
org.hibernate.persister.internal  
org.hibernate.persister.spi  
org.hibernate.persister.walking.spi
Package for "walking" associations through metadata definition.
org.hibernate.pretty  
org.hibernate.procedure  
org.hibernate.procedure.internal
Defines the internal support for implementing stored procedure calling.
org.hibernate.procedure.spi  
org.hibernate.property.access.internal  
org.hibernate.property.access.spi
Defines strategies for accessing the persistent properties of an entity or composite.
org.hibernate.proxool.internal
Implementation of ConnectionProvider using the proxool Connection pool.
org.hibernate.proxy  
org.hibernate.proxy.map  
org.hibernate.proxy.pojo  
org.hibernate.proxy.pojo.bytebuddy  
org.hibernate.query  
org.hibernate.query.criteria
Hibernate's support for JPA criteria queries.
org.hibernate.query.criteria.internal  
org.hibernate.query.derived  
org.hibernate.query.hql
Package defining support for HQL queries (including supprt for JPQL as a subset of HQL).
org.hibernate.query.hql.internal  
org.hibernate.query.hql.spi  
org.hibernate.query.internal  
org.hibernate.query.named
Support for named queries
org.hibernate.query.procedure  
org.hibernate.query.results
Support for defining result-set mappings used in NativeQuery and ProcedureCall / StoredProcedureQuery.
org.hibernate.query.results.complete
Support for immutable result/fetch builder graph nodes built from static sources such as JPA's SqlResultSetMapping or `hbm.xml` mapping ``.
org.hibernate.query.results.dynamic
Support for mutable result/fetch builder graphs nodes built dynamically via Hibernate's NativeQuery APIs
org.hibernate.query.results.implicit
Defines support for implicit ResultSet mappings.
org.hibernate.query.spi  
org.hibernate.query.sql
Package defining support for native SQL queries
org.hibernate.query.sql.internal  
org.hibernate.query.sql.spi  
org.hibernate.query.sqm  
org.hibernate.query.sqm.function  
org.hibernate.query.sqm.internal
Package for the SQM-backed Query implementation details
org.hibernate.query.sqm.mutation.internal  
org.hibernate.query.sqm.mutation.internal.cte  
org.hibernate.query.sqm.mutation.internal.inline  
org.hibernate.query.sqm.mutation.internal.temptable
Support for multi-table SQM mutation (insert, update, delete) operations using a table to temporarily hold the matching ids.
org.hibernate.query.sqm.mutation.spi  
org.hibernate.query.sqm.produce.function
Package defining support for SqmFunctionDescriptor handling.
org.hibernate.query.sqm.produce.function.internal  
org.hibernate.query.sqm.spi
SPI-level SQM contracts
org.hibernate.query.sqm.sql
Package for the translation of SQM into SQL AST
org.hibernate.query.sqm.sql.internal  
org.hibernate.query.sqm.tree
This package contains the classes that make up the SQM tree nodes.
org.hibernate.query.sqm.tree.cte  
org.hibernate.query.sqm.tree.delete  
org.hibernate.query.sqm.tree.domain  
org.hibernate.query.sqm.tree.expression  
org.hibernate.query.sqm.tree.from  
org.hibernate.query.sqm.tree.insert  
org.hibernate.query.sqm.tree.jpa  
org.hibernate.query.sqm.tree.predicate  
org.hibernate.query.sqm.tree.select  
org.hibernate.query.sqm.tree.update  
org.hibernate.resource.beans.container.internal  
org.hibernate.resource.beans.container.spi  
org.hibernate.resource.beans.internal  
org.hibernate.resource.beans.spi  
org.hibernate.resource.jdbc  
org.hibernate.resource.jdbc.internal  
org.hibernate.resource.jdbc.spi  
org.hibernate.resource.transaction
Defines the resource-level transaction capabilities of Hibernate, which revolves around the TransactionCoordinator contract.
org.hibernate.resource.transaction.backend.jdbc.internal  
org.hibernate.resource.transaction.backend.jdbc.spi  
org.hibernate.resource.transaction.backend.jta.internal  
org.hibernate.resource.transaction.backend.jta.internal.synchronization
Internal implementation details for reacting to JTA transaction completion via Synchronization callbacks
org.hibernate.resource.transaction.internal
Internal implementation details for the resource-level transaction capabilities of Hibernate.
org.hibernate.resource.transaction.spi
Extended SPI contracts for the resource-level transaction capabilities of Hibernate.
org.hibernate.result  
org.hibernate.result.internal  
org.hibernate.result.spi  
org.hibernate.service  
org.hibernate.service.internal  
org.hibernate.service.spi  
org.hibernate.spatial  
org.hibernate.spatial.contributor  
org.hibernate.spatial.dialect.cockroachdb
SpatialDialects for CockroachDB
org.hibernate.spatial.dialect.db2  
org.hibernate.spatial.dialect.h2gis  
org.hibernate.spatial.dialect.hana  
org.hibernate.spatial.dialect.mariadb  
org.hibernate.spatial.dialect.mysql  
org.hibernate.spatial.dialect.oracle  
org.hibernate.spatial.dialect.postgis  
org.hibernate.spatial.dialect.sqlserver  
org.hibernate.spatial.integration  
org.hibernate.spatial.jts  
org.hibernate.spatial.predicate  
org.hibernate.spi  
org.hibernate.sql  
org.hibernate.sql.ast
Package defining a SQL AST for use in creating and executing various JDBC operations
org.hibernate.sql.ast.spi
Package defining support for creating and consuming SQL AST
org.hibernate.sql.ast.tree
Package defining the SQL AST.
org.hibernate.sql.ast.tree.cte  
org.hibernate.sql.ast.tree.delete  
org.hibernate.sql.ast.tree.expression
Contracts related to expressions in a SQL tree
org.hibernate.sql.ast.tree.from  
org.hibernate.sql.ast.tree.insert  
org.hibernate.sql.ast.tree.predicate  
org.hibernate.sql.ast.tree.select  
org.hibernate.sql.ast.tree.update  
org.hibernate.sql.exec
Package defining support for execution of SQL statements through JDBC.
org.hibernate.sql.exec.internal  
org.hibernate.sql.exec.spi  
org.hibernate.sql.results
Package for processing JDBC ResultSets into hydrated domain model graphs based on a "load plan" defined by a "domain result graph" - one or more DomainResult nodes with zero-or-more Fetch nodes
org.hibernate.sql.results.caching
Support for caching of query results
org.hibernate.sql.results.caching.internal  
org.hibernate.sql.results.graph  
org.hibernate.sql.results.graph.basic  
org.hibernate.sql.results.graph.collection  
org.hibernate.sql.results.graph.collection.internal  
org.hibernate.sql.results.graph.embeddable  
org.hibernate.sql.results.graph.embeddable.internal  
org.hibernate.sql.results.graph.entity  
org.hibernate.sql.results.graph.entity.internal  
org.hibernate.sql.results.graph.instantiation  
org.hibernate.sql.results.graph.instantiation.internal  
org.hibernate.sql.results.graph.tuple  
org.hibernate.sql.results.internal  
org.hibernate.sql.results.internal.domain  
org.hibernate.sql.results.jdbc.internal  
org.hibernate.sql.results.jdbc.spi  
org.hibernate.sql.results.spi  
org.hibernate.stat  
org.hibernate.stat.internal  
org.hibernate.stat.spi  
org.hibernate.testing  
org.hibernate.testing.async  
org.hibernate.testing.boot  
org.hibernate.testing.bytecode.enhancement  
org.hibernate.testing.byteman  
org.hibernate.testing.cache  
org.hibernate.testing.cleaner  
org.hibernate.testing.common.connections  
org.hibernate.testing.env  
org.hibernate.testing.hamcrest  
org.hibernate.testing.jdbc  
org.hibernate.testing.jdbc.leak  
org.hibernate.testing.jta  
org.hibernate.testing.junit4  
org.hibernate.testing.logger  
org.hibernate.testing.orm  
org.hibernate.testing.orm.assertj  
org.hibernate.testing.orm.domain  
org.hibernate.testing.orm.domain.animal
Standard model for Hibernate's legacy Animal model used in HQL testing
org.hibernate.testing.orm.domain.contacts  
org.hibernate.testing.orm.domain.gambit  
org.hibernate.testing.orm.domain.helpdesk  
org.hibernate.testing.orm.domain.retail  
org.hibernate.testing.orm.jdbc  
org.hibernate.testing.orm.jpa  
org.hibernate.testing.orm.junit  
org.hibernate.testing.orm.logger  
org.hibernate.testing.orm.transaction  
org.hibernate.testing.schema  
org.hibernate.testing.transaction  
org.hibernate.testing.util  
org.hibernate.testing.util.jpa  
org.hibernate.tool.schema  
org.hibernate.tool.schema.extract.internal  
org.hibernate.tool.schema.extract.spi  
org.hibernate.tool.schema.internal  
org.hibernate.tool.schema.internal.exec  
org.hibernate.tool.schema.internal.script  
org.hibernate.tool.schema.spi  
org.hibernate.transform  
org.hibernate.tuple  
org.hibernate.tuple.component  
org.hibernate.tuple.entity  
org.hibernate.type  
org.hibernate.type.descriptor  
org.hibernate.type.descriptor.converter
Support for handling JPA AttributeConverter instances as part of the Hibernate Type system.
org.hibernate.type.descriptor.java  
org.hibernate.type.descriptor.java.spi  
org.hibernate.type.descriptor.jdbc
Defines handling of the standard JDBC-defined types.
org.hibernate.type.descriptor.jdbc.internal  
org.hibernate.type.descriptor.jdbc.spi  
org.hibernate.type.descriptor.sql  
org.hibernate.type.descriptor.sql.internal  
org.hibernate.type.descriptor.sql.spi  
org.hibernate.type.internal  
org.hibernate.type.jackson  
org.hibernate.type.jakartajson  
org.hibernate.type.jaxb  
org.hibernate.type.spi  
org.hibernate.usertype  
org.hibernate.usertype.internal  
org.hibernate.vibur.internal
Implementation of ConnectionProvider using ViburDBCP.