All Packages
Package Summary
Package
Description
This package defines the central Hibernate APIs, beginning with
SessionFactory
, which represents an instance of
Hibernate at runtime and is the source of new instances of
Session
and StatelessSession
,
the most important APIs exposing persistence-related operations for
entities.This SPI package defines an abstraction over the notion of an "action"
which is scheduled for asynchronous execution by the event listeners.
A set of mapping annotations which extend the O/R mapping annotations defined by JPA.
Annotations used to drive annotation processors:
@Find
is used to generate finder methods using the Metamodel
Generator,
@HQL
and @SQL
are used to generate query methods using the Metamodel
Generator, and
CheckHQL
instructs the Query Validator to check all HQL queries
in the annotated package or type.This package defines an easy way to extend Hibernate with user-defined
annotations that define customized O/R mappings of annotated entities
and annotated entity attributes.
This package contains the interfaces that make up the bootstrap API
for Hibernate.
Support for integrating Jakarta Bean Validation.
An SPI service for processing and handling
cfg.xml
files.This package defines the boot-time metamodel, which is an interpretation
of the domain model (entity classes, embeddable classes, and attributes)
and the mapping of these "domain model parts" to the database.
Defines the SPI of a
registry
of JPA
AttributeConverter
s.This API allows intervention by generic code in the process of determining the names of
database objects (tables, columns, and constraints).
Defines an SPI used during the process of transforming
mapping sources into
the
Metadata
reference.Some SPIs related to DDL generation and schema management.
Overall, this module is responsible for taking
managed-resources and
building the
hibernate-models
model (ClassDetails, etc.)
to ultimately be bound into Hibernate's boot-time model.Support for processing mapping XML files, ultimately creating/updating
ClassDetails, FieldDetails
and annotation references based on the XML.
First performs some pre-processing
which aggregates information across all XML mappings
Next performs XML processing which
applies metadata-complete mappings and collects overlay/override XML for later application.
Support for handling named queries during the bootstrap process.
Defines service registry contracts a program may use for
configuring Hibernate.
The class loading service SPI.
Defines a feature set around named registration of implementations of various contracts
and the ability to select those implementations.
Defines actual contract used for
strategy selection.
A range of SPIs allowing integration with—and customization of—the process of building metadata.
Support for XSD handling.
This package defines an SPI for integrating bytecode libraries with Hibernate.
Package defining bytecode code enhancement (instrumentation) support.
Support for bytecode interceptor implementations.
Package defining bytecode code enhancement (instrumentation) support.
This package defines the API of the second-level cache service.
An SPI modelling various aspects of the second-level cache configuration.
Defines the integration aspect of Hibernate's second-level caching, allowing
a "caching backend" to be plugged in as a cache provider.
Defines contracts for transactional and concurrent access to cached
entity and
collection data.
This package defines formats for disassembled state kept in the second level cache.
This package provides a framework intended to reduce the work needed to implement
a caching provider.
This package defines APIs for configuring Hibernate.
This package defines the SPI of a framework for lazy-initializing
and state-tracking collection wrappers.
SPI-level contracts around "current session" and "current tenant" support.
This package abstracts over the multifarious dialects of SQL
understood by the databases supported by Hibernate.
Support for
Dialect
-specific aggregate column types,
including user-defined composite types, and JSON or XML types.Contains implementations of
SqmFunctionDescriptor
describing a range of relatively-sophisticated SQL functions available in various dialects.Support for
Dialect
-specific identity column handling.Support for
Dialect
-specific locking strategies.Support for
Dialect
-specific pagination strategies.Support for
Dialect
-specific sequence handling.Internal package containing dialect-specific extensions of
AbstractSqlAstTranslator
.Support for temporary tables.
Internal package containing dialect-specific implementations of
JdbcType
.Support for
Dialect
-specific unique constraint definition.This package contains classes which are "shared" by other subsystems,
and implementations of some key algorithms.
Defines the SPI of the configuration service.
Support for various aspects of JDBC interaction.
Support for JDBC statement batching.
Defines contracts for JDBC batching support.
Defines SPI contracts for obtaining JDBC
Connection
s from a
provider implemented as a service.Defines contracts for JDBC REF_CURSOR support.
Contracts supporting Dialect resolution (from JDBC metadata) and Dialect building.
Package defining support for executing mutation SQL statements produced by an
entity persister or
collection
persister.
SPI contracts supporting various aspects of JDBC interaction.
Support for JNDI within Hibernate
The SPI contracts for integration with JNDI.
Models the fetch profiles defined by the application.
Support for dealing with parameters of native queries.
An SPI for dealing with parameters of native queries.
This package defines some central internal SPI abstractions
used throughout the implementation of Hibernate.
An SPI for integrating with container-provided implementations of JTA.
An SPI abstracting the object which implements
Transaction
.An SPI for services which collect, report, or monitor diagnostic events.
An SPI for the event listener registration service.
Defines the event types and event listener interfaces for
events produced by the stateful
Session
.Defines certain very important flavors of
JDBCException
,
along with an SPI for interpreting product-specific SQLException
s
arising from a JDBC driver into something more uniform and meaningful.An SPI for
Dialect
-specific exception
interpretation and conversion.This package defines an abstraction over all kinds of automatic
value generation, including id generation and version number
generation.
Contains a framework of strategies for efficient retrieval of
database-generated values.
Implements and extends the JPA-defined entity graph API.
This package defines an internal SPI abstracting over implementations
of the APIs defined in
org.hibernate.graph
.This package and its subpackages, especially
org.hibernate.id.enhanced
,
contain the built-in id generators, all of which implement either
IdentifierGenerator
or
PostInsertIdentifierGenerator
.Enhanced/improved versions of table and sequence based identifier generators
targeting portability and unified configuration.
Contains a framework of strategies for retrieving database-generated ids.
Contains the
UuidGenerator
.An SPI for extensions which integrate with Hibernate via the Java
ServiceLoader
facility.A small API allowing the client of a Hibernate session to interact directly
with JDBC, using the same connection and transaction obtained by the session.
The packages in this namespace are responsible for implementing certain
requirements of the JPA specification, especially things which are only
needed when Hibernate is acting as a JPA persistence provider.
The SPI contracts for supporting JPA lifecycle callbacks.
An SPI for managing cases where, by default, Hibernate intentionally violates
the letter of the JPA specification.
This package defines functionality for processing JDBC result sets
and returning complex graphs of persistent objects.
This package defines the Hibernate configuration-time mapping model.
This package defines an API for accessing the runtime metamodel describing persistent
entities in Java and their mappings to the relational database schema.
Defines the runtime mapping metamodel, which describes the mapping
of the application's domain model parts (entities, attributes) to
relational database objects (tables, columns).
Support for set and map ordering
Defines the runtime domain metamodel, which describes the Java aspect of
the application's domain model parts (entities, attributes).
An SPI for the runtime domain metamodel.
An SPI supporting custom instantiation of
entity instances and
embeddable objects.
This package abstracts persistence mechanisms for collections.
Defines support for performing mutation operations against collections.
This package abstracts persistence mechanisms for entities.
Defines support for performing mutation operations originating
from persistence-context events.
An SPI for integrating custom entity and collection persisters.
Package for "walking" associations through metadata definition.
Contains some functions for pretty-printing things for exception and log messages.
Defines support for executing database stored procedures and functions and accessing their outputs.
Defines an SPI for calling stored procedures and functions.
An SPI abstracting how persistent attributes of an entity or embeddable type
are accessed by Hibernate.
This package defines a framework for lazy-initializing entity proxies.
Proxies for entity objects represented as Java maps.
Proxies for plain Java objects.
Everything related to HQL/JPQL, native SQL, and criteria queries.
Common APIs used internally, in the SQL tree,
in the dialects, and in the criteria query API.
The JPA-standard criteria query API defines all the operations needed express
any query written in standard JPQL.
SPI for extending
HibernateCriteriaBuilder
with additional functionality by registering a Service
.Package defining support for HQL, including JPQL as a subset of HQL.
SPIs for HQL support.
Support for named queries
The
Range
framework.The
Restriction
framework.Support for defining result set mappings
used in
NativeQuery
, ProcedureCall
,
and StoredProcedureQuery
.Support for SelectionSpecification
and MutationSpecification which
is similar in concept to criteria queries, but focused on ease-of-use and less verbosity.
Contains a range of internal abstractions for dealing with query execution,
query plans, query options, and query parameters.
SPIs for native SQL query support.
This package defines a semantic model of HQL queries.
An SPI for defining, registering, and rendering functions in HQL.
SPI for handling SQM UPDATE and DELETE queries
Package defining support for
SqmFunctionDescriptor
handling.SPI-level SQM contracts
Package for the translation of SQM into SQL AST
This package contains the classes that make up the SQM tree nodes.
Nodes representing common table expressions (CTE) in the SQM tree.
Nodes representing
delete
statements in the SQM tree.Nodes representing path expressions in the SQM tree.
Nodes representing expressions in the SQM tree.
Nodes representing root entities and joins in the SQM tree.
Nodes representing
insert
statements in the SQM tree.Nodes representing logical predicates in the SQM tree.
Nodes representing
select
statements in the SQM tree.Nodes representing
update
statements in the SQM tree.Support for tuples in SQM.
Programmatic access to the schema management tool.
An SPI abstracting over CDI-like bean containers.
Defines an SPI for integration with CDI-like containers.
A facility for managing logical JDBC connections and keeping track of other heavyweight resources.
An SPI for managing JDBC connections and other heavyweight resources, based around the
idea of a "JDBC session".
Defines the resource-level transaction capabilities of Hibernate, centered
around the
TransactionCoordinator
contract.An SPI which models the concept of a JDBC resource-level transaction.
Extended SPI contracts for the resource-level transaction capabilities of Hibernate.
Defines support for dealing with results returned from database via JDBC.
Defines a framework for pluggable services,
allowing for customization of key components of Hibernate, and abstraction of these
components as SPI interfaces.
Defines an SPI for integrating pluggable services.
A tiny SPI for dealing with compound names and navigable paths.
This package contains helper classes for rendering SQL fragments and SQL statements.
Package defining a SQL AST for use in generation of SQL.
Package defining support for creating and consuming a SQL AST.
Package defining the SQL AST.
Support for common table expressions (CTE) in a SQL tree.
AST nodes representing
delete
statements in a SQL tree.AST nodes representing expressions in a SQL tree.
AST nodes representing root tables and joins in a SQL tree.
AST nodes representing
insert
statements in a SQL tree.AST nodes representing logical predicates in a SQL tree.
AST nodes representing
select
statements in a SQL tree.AST nodes representing
update
statements in a SQL tree.Support for execution of SQL statements via JDBC.
SPI for execution of SQL statements via JDBC.
Package contains specialized SQL AST nodes and builders for table mutations
of model parts
originating from normal persistence-context events.
SQL AST extensions for model mutations.
Support for building
TableMutation
references for persisting entity mutation eventsExtensions to
JdbcOperation
for model mutations.Package for processing JDBC
ResultSet
s into hydrated domain model graphs
based on a "load plan" defined by a "domain result graph", that is, one or more
DomainResult
nodes with zero or more
Fetch
nodes.Support for caching of query results.
Defines domain result graphs.
This package exposes statistics
about a running instance of
SessionFactory
and its
interaction with the database and second-level cache.An SPI allowing customized statistics collection.
Contains tooling related to DDL generation, export, migration, and validation.
Defines an SPI for schema information extraction from the database via JDBC.
An SPI for tooling related to DDL generation, export, migration, and validation.
Defines strategies for post-processing criteria query
results into a form convenient to the application.
A Hibernate
Type
is a strategy for mapping a Java
property type to a JDBC type or types.Contracts for reading and writing values to and from JDBC.
An SPI for basic-typed value conversions, including support for handling
JPA
AttributeConverter
instances as part of
the Hibernate Type
system.Integrates a range of types defined by the JDK with the type system
of Hibernate.
SPIs related to
JavaType
.Defines handling of almost the full range of standard JDBC-defined SQL data types.
SPIs related to
JdbcType
.An API for working with abstract families of DDL types
parameterized by varying length, precision, and scale.
Defines a registry for
DdlType
s.Support for type mappings which format composite values to a structured
text format (JSON or XML) for storage in a database-specific column type
supporting that structured format.
Implementations of
FormatMapper
using Jackson.An implementation of
FormatMapper
using Jakarta JSON.An implementation of
FormatMapper
using JAXB.Defines a registry for Hibernate
Type
s.An API for user-defined custom types which extend the set of built-in
types defined in
org.hibernate.type
.