@hibernate Class Level Tag Usage

@hibernate.cache (0..1)

Enables caching

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
usagetextDefines the cache semantics
Valid options are:

read-write

nonstrict-read-write

read-only

transactional
true

@hibernate.class (0..1)

Declare a persistent class

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of its database tablefalse
discriminator-valuetextA value that distinguishes the particular subclassfalse
mutableboolSpecifies that instances of the class are (not) mutable

Default value(s):

true
Valid options are:

true

false
false
dynamic-updateboolSpecifies that only changed columns should appear in the SQL UPDATE

Default value(s):

false
false
dynamic-insertboolSpecifies that null columns should not appear in the SQL INSERT

Default value(s):

false
false
select-before-updateboolSpecifies that an SQL update should never be performed unless the object is actually modified

Default value(s):

false
false
optimistic-locktextSpecifiy the optimistic locking strategy (requires dynamic-update="true")

Default value(s):

version
Valid options are:

version

none

all

dirty
false
polymorphismtextEnable "explicit" polymorphism

Default value(s):

implicit
Valid options are:

explicit

implicit
false
schematextOverride the schema name specified by the root hibernate-mapping elementfalse
lazyboolSpecifies the class itself to use for CGLIB proxy interface

Default value(s):

false
false
proxytextSpecifies an interface to use for CGLIB proxiesfalse
wheretextthe where clause to use when loading elements for this classfalse
persistertextSpecifies a custom ClassPersisterfalse
batch-sizetextspecify a "batch size" for fetching instances of this class by identifierfalse

@hibernate.discriminator (0..1)

Defines a discriminator

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue
typetextThe Hibernate typefalse
lengthtextThe length of the mapped database table columnfalse
not-nullboolIs the column nullable

Default value(s):

true
Valid options are:

true

false
false
forcebool Indicate whether Hibernate should specify allowed discriminator values even when retrieving all instances of the root class.

Default value(s):

true
Valid options are:

true

false
false
insertbool Set this to false if your discriminator column is also part of a mapped composite identifier.

Default value(s):

true
Valid options are:

true

false
false

@hibernate.jcs-cache (0..1)

Enables caching (deprecated)

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
usagetextDefines the cache semantics. nonstrict-read-write only applies to version 2.0 and later.
Valid options are:

read-write

nonstrict-read-write

read-only

transactional
true

@hibernate.joined-subclass (0..1)

Declare the current class as joined subclass

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
lazyboolSpecifies the class itself to use for CGLIB proxy interface

Default value(s):

false
false
proxytextSpecifies an interface to use for CGLIB proxiesfalse
dynamic-updateboolSpecifies that only changed columns should appear in the SQL UPDATE

Default value(s):

false
false
dynamic-insertboolSpecifies that null columns should not appear in the SQL INSERT

Default value(s):

false
false
schematextOverride the schema name specified by the root hibernate-mapping elementfalse
tabletextName of the table, where this class should be persisted in

Default value(s):

unqualified class name
false

@hibernate.joined-subclass-key (0..1)

Declares a joined-subclass key

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue

@hibernate.mapping (0..1)

Customizes mapping declaration

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
schematextThe name of a database schemafalse
default-cascadetextA default cascade style

Default value(s):

none
Valid options are:

none

save-update
false
auto-importboolSpecifies whether we can use unqualified class names (of classes in this mapping) in the query language

Default value(s):

true
Valid options are:

true

false
false

@hibernate.query (0..*)

Declare a named query for class

Applies to: Class level on bean

ParameterTypeApplicabilityDescriptionMandatory
nametextName of this querytrue
querytextQuery contentstrue

@hibernate.subclass (0..1)

Declare the current class as subclass

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of its database tablefalse
discriminator-valuetextA value that distinguishes the particular subclassfalse
lazyboolSpecifies the class itself to use for CGLIB proxy interface

Default value(s):

false
false
proxytextSpecifies an interface to use for CGLIB proxiesfalse
dynamic-updateboolSpecifies that only changed columns should appear in the SQL UPDATE

Default value(s):

false
false
dynamic-insertboolSpecifies that null columns should not appear in the SQL INSERT

Default value(s):

false
false

@hibernate Method Level Tag Usage

@hibernate.any (0..1)

Declares any type mapping

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
id-typetextType of the identifiertrue
meta-typetextMeta-typefalse
cascadetextCascaded operationstrue
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.any-column (0..*)

Defines a column for the any type mapping

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
nametextThe column nametrue
lengthtextThe column lengthfalse
uniqueboolIs the column uniquefalse
not-nullboolIs the column nullablefalse
indextextThe name of an indexfalse
unique-keytextThe name of a unique constraintfalse
sql-typetextThe SQL column typefalse

@hibernate.array (0..1)

Defines an array

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object
Valid options are:

all

none

save-update

delete
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.bag (0..1)

Defines a bag

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
inverseboolIf inverse collectionfalse
tabletextThe name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
lazyboolEnable lazy initialization

Default value(s):

false
false
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object

Default value(s):

none
Valid options are:

all

none

save-update

delete

all-delete-orphan

delete-orphan
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
order-bytextSpecify table columns that define the iteration orderfalse
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.collection-cache (0..1)

Enables caching

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
usagetextDefines the cache semantics
Valid options are:

read-write

nonstrict-read-write

read-only

transactional
true

@hibernate.collection-composite-element (0..1)

Declares a composite collection element

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
classtextThe name of the element classtrue

@hibernate.collection-element (0..1)

Declares a collection element

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue
typetextThe Hibernate typetrue
lengthtextThe length of the mapped database table columnfalse
not-nullboolIs the column nullablefalse
uniqueboolIs the column uniquefalse

@hibernate.collection-index (0..1)

Declares a collection index. This will be used as index for the arrays, sotring field for the lists or keys in the map

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue
typetextThe Hibernate typefalse
lengthtextThe length of the mapped database table columnfalse

@hibernate.collection-jcs-cache (0..1)

Enables caching (deprecated)

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
usagetextDefines the cache semantics
Valid options are:

read-write

nonstrict-read-write

read-only

transactional
true

@hibernate.collection-key (0..1)

Declares a collection key

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue

@hibernate.collection-key-column (0..*)

Defines a column for a collection key

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
nametextThe column nametrue
lengthtextThe column lengthfalse
uniqueboolIs the column uniquefalse
not-nullboolIs the column nullablefalse
indextextThe name of an indexfalse
unique-keytextThe name of a unique constraintfalse
sql-typetextThe SQL column typefalse

@hibernate.collection-many-to-many (0..1)

Declares a many-to-many relationship

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue
classtextFully qualified class namefalse
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false

@hibernate.collection-one-to-many (0..1)

Declares a one-to-many relationship

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
classtextFully qualified class name of the associated classfalse

@hibernate.column (0..*)

Customize column mapping

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
nametextThe column nametrue
lengthtextThe column lengthfalse
uniqueboolIs the column uniquefalse
not-nullboolIs the column nullablefalse
indextextThe name of an indexfalse
unique-keytextThe name of a unique constraintfalse
sql-typetextThe SQL column typefalse
formulatextAn SQL expression that defines the value for a computed property. Computed properties do not have a column mapping of their own.false

@hibernate.component (0..1)

Declares a component

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
classtextA fully qualified class namefalse
prefixtextWhen multiple Java fields are of the same component datatype, use this to specify a discriminating column-name-prefix. Properties that are included which have a @hibernate.property column="xxx" attribute will not be prefixed. If you want to shorten a property column-name and prefix it for the component, use @hibernate.column name="xxx" on the property.false

@hibernate.generator-param (0..*)

Specifies an id generator parameter value

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
nametextThe name of the parametertrue
valuetextThe parameter valuetrue

@hibernate.id (0..1)

Declares an identifier property

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columnfalse
typetextThe Hibernate typefalse
lengthtextThe length of the mapped database table columnfalse
unsaved-valuetextA value that distinguishes transient instances with existing persistent state from new transient instances

Default value(s):

null
false
generator-classtextThe key generator class
Valid options are:

uuid.hex

uuid.string

increment

assigned

native

identity

sequence

hilo

seqhilo

foreign
true
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.index-many-to-many (0..1)

Declares many-to-many collection index. Will be used as map key for ternary associations. Shall be entity?

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columntrue
classtextEntity to be used as key in the ternary association mapstrue
foreign-keytextThe name of the foreign key constraint to associate with this association.false

@hibernate.list (0..1)

Defines a List

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
lazyboolEnable lazy initializationfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated objects

Default value(s):

none
Valid options are:

all

none

save-update

delete

all-delete-orphan

delete-orphan
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.many-to-any (0..1)

Declares many-to-any type mapping

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
id-typetextType of the identifiertrue
meta-typetextMeta-typefalse

@hibernate.many-to-any-column (0..*)

Defines a column for the many-to-any type mapping

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
nametextThe column nametrue
lengthtextThe column lengthfalse
uniqueboolIs the column uniquefalse
not-nullboolIs the column nullablefalse
indextextThe name of an indexfalse
unique-keytextThe name of a unique constraintfalse
sql-typetextThe SQL column typefalse

@hibernate.many-to-one (0..1)

Declares a many-to-one association

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columnfalse
classtextThe name of the associated classfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object

Default value(s):

none
Valid options are:

all

none

save-update

delete
false
not-nullboolIf the column is not nullable

Default value(s):

false
false
uniqueboolIf the column is unique

Default value(s):

false
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
insertboolShould the column appear in the SQL INSERT. Only applies for version >= 2.0false
updateboolShould the column appear in the SQL UPDATE. Only applies for version >= 2.0false
property-reftextThe name of a property of the associated class that is joined to this foreign key. If not specified, the primary key of the associated class is used.false
foreign-keytextThe name of the foreign key constraint to associate with this association.false
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false
uniquetextEnable the DDL generation of a unique constraint for the foreign-key column.
Valid options are:

true

false
false

@hibernate.map (0..1)

Defines a map

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
lazyboolEnable lazy initializationfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object
Valid options are:

all

save-update

delete

none

all-delete-orphan

delete-orphan
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
sorttextSpecify a sorted collection with natural sort order or a given comparator classfalse
order-bytextSpecify table columns that define the iteration orderfalse
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.one-to-one (0..1)

Declares a one-to-one association

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
classtextThe name of the associated classfalse
property-reftextbi-directional reference to one-to-one table that holds the foreign keyfalse
constrainedboolIs there a foreign key constraintfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object
Valid options are:

all

none

save-update

delete
false
outer-joinboolEnable outer-join fetching for this association when hibernate.use_outer_join is set

Default value(s):

auto
Valid options are:

true

false

auto
false
foreign-keytextThe name of the foreign key constraint to associate with this association.false
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.parent (0..1)

Declares a parent reference

Applies to: Hibernate

@hibernate.primitive-array (0..1)

Defines a primitive-array

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
tabletextThe name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object
Valid options are:

all

none

save-update

delete
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.property (0..1)

Defines a property

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of the mapped database table columnfalse
typetextThe Hibernate typefalse
lengthtextThe length of the mapped database table columnfalse
not-nullboolIf the column is not nullablefalse
uniqueboolIf the column is uniquefalse
insertboolShould the column appear in the SQL INSERTfalse
updateboolShould the column appear in the SQL UPDATEfalse
formulatextFormula for calculating the value of this proertyfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.set (0..1)

Defines a set

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
inverseboolIf inverse collection

Default value(s):

false
false
tabletextDefaults to role name: the name of the collection table (not used for one-to-many associations)false
schematextThe name of a table schema to override the schema declaredfalse
lazyboolEnable lazy initialization

Default value(s):

false
false
cascadetextSpecifies which operations should be cascaded from the parent object to the associated object
Valid options are:

all

none

save-update

delete

all-delete-orphan

delete-orphan
false
outer-jointextEnable outer-join fetching

Default value(s):

auto
Valid options are:

true

false

auto
false
sorttextSpecify a sorted collection with natural sort order or a given comparator classfalse
order-bytextSpecify table columns that define the iteration orderfalse
wheretextAn SQL WHERE conditionfalse
batch-sizetextSpecify a "batch size" for lazily fetching instances of this collectionfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.timestamp (0..1)

Declares a timestamp property

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of an column holding the timestampfalse
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false

@hibernate.version (0..1)

Declares a version property

Applies to: Hibernate

ParameterTypeApplicabilityDescriptionMandatory
columntextThe name of a column holding the version numberfalse
typetextThe Hibernate type
Valid options are:

integer

short

long

timestamp

calendar
false
accesstextThe strategy Hibernate should use for accessing the property value.

Default value(s):

property
Valid options are:

field

property

ClassName
false
unsaved-valuetextA version property value that indicates that an instance is newly instantiated (unsaved), distinguishing it from transient instances that were saved or loaded in a previous session (undefined specifies that the identifier property value should be used).

Default value(s):

undefined
Valid options are:

null

negative

undefined
false

@hibernate Field Level Tag Usage