以下是摘自http://xdoclet.sourceforge.net/xdoclet/tags/hibernate-tags.html的内容
@hibernate Tag Reference
Tags for declaration of Hibernate descriptor file
Applies to: All classes, at class level and on getter methods
@hibernate Class Level Tags
@hibernate.cache@hibernate.class
@hibernate.discriminator
@hibernate.jcs-cache
@hibernate.joined-subclass
@hibernate.joined-subclass-key
@hibernate.mapping
@hibernate.query
@hibernate.subclass
@hibernate Method Level Tags
@hibernate.any@hibernate.any-column
@hibernate.array
@hibernate.bag
@hibernate.collection-cache
@hibernate.collection-composite-element
@hibernate.collection-element
@hibernate.collection-index
@hibernate.collection-jcs-cache
@hibernate.collection-key
@hibernate.collection-key-column
@hibernate.collection-many-to-many
@hibernate.collection-one-to-many
@hibernate.column
@hibernate.component
@hibernate.generator-param
@hibernate.id
@hibernate.index-many-to-many
@hibernate.list
@hibernate.many-to-any
@hibernate.many-to-any-column
@hibernate.many-to-one
@hibernate.map
@hibernate.one-to-one
@hibernate.parent
@hibernate.primitive-array
@hibernate.property
@hibernate.set
@hibernate.timestamp
@hibernate.version
@hibernate Field Level Tags
@hibernate Class Level Tag Usage
@hibernate.cache (0..1)
Enables caching
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
usage | text | Defines 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of its database table | false | |
discriminator-value | text | A value that distinguishes the particular subclass | false | |
mutable | bool | Specifies that instances of the class are (not) mutable Default value(s): true Valid options are: true false |
false | |
dynamic-update | bool | Specifies that only changed columns should appear in the SQL UPDATE Default value(s): false |
false | |
dynamic-insert | bool | Specifies that null columns should not appear in the SQL INSERT Default value(s): false |
false | |
select-before-update | bool | Specifies that an SQL update should never be performed unless the object is actually modified Default value(s): false |
false | |
optimistic-lock | text | Specifiy the optimistic locking strategy (requires dynamic-update="true") Default value(s): version Valid options are: version none all dirty |
false | |
polymorphism | text | Enable "explicit" polymorphism Default value(s): implicit Valid options are: explicit implicit |
false | |
schema | text | Override the schema name specified by the root hibernate-mapping element | false | |
lazy | bool | Specifies the class itself to use for CGLIB proxy interface Default value(s): false |
false | |
proxy | text | Specifies an interface to use for CGLIB proxies | false | |
where | text | the where clause to use when loading elements for this class | false | |
persister | text | Specifies a custom ClassPersister | false | |
batch-size | text | specify a "batch size" for fetching instances of this class by identifier | false |
@hibernate.discriminator (0..1)
Defines a discriminator
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true | |
type | text | The Hibernate type | false | |
length | text | The length of the mapped database table column | false | |
not-null | bool | Is the column nullable Default value(s): true Valid options are: true false |
false | |
force | bool | 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 | |
insert | bool | 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
usage | text | Defines 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
lazy | bool | Specifies the class itself to use for CGLIB proxy interface Default value(s): false |
false | |
proxy | text | Specifies an interface to use for CGLIB proxies | false | |
dynamic-update | bool | Specifies that only changed columns should appear in the SQL UPDATE Default value(s): false |
false | |
dynamic-insert | bool | Specifies that null columns should not appear in the SQL INSERT Default value(s): false |
false | |
schema | text | Override the schema name specified by the root hibernate-mapping element | false | |
table | text | Name 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true |
@hibernate.mapping (0..1)
Customizes mapping declaration
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
schema | text | The name of a database schema | false | |
default-cascade | text | A default cascade style Default value(s): none Valid options are: none save-update |
false | |
auto-import | bool | Specifies 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | Name of this query | true | |
query | text | Query contents | true |
@hibernate.subclass (0..1)
Declare the current class as subclass
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of its database table | false | |
discriminator-value | text | A value that distinguishes the particular subclass | false | |
lazy | bool | Specifies the class itself to use for CGLIB proxy interface Default value(s): false |
false | |
proxy | text | Specifies an interface to use for CGLIB proxies | false | |
dynamic-update | bool | Specifies that only changed columns should appear in the SQL UPDATE Default value(s): false |
false | |
dynamic-insert | bool | Specifies 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
id-type | text | Type of the identifier | true | |
meta-type | text | Meta-type | false | |
cascade | text | Cascaded operations | true | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | The column name | true | |
length | text | The column length | false | |
unique | bool | Is the column unique | false | |
not-null | bool | Is the column nullable | false | |
index | text | The name of an index | false | |
unique-key | text | The name of a unique constraint | false | |
sql-type | text | The SQL column type | false |
@hibernate.array (0..1)
Defines an array
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
cascade | text | Specifies which operations should be cascaded from the parent object to the associated object Valid options are: all none save-update delete |
false | |
outer-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
inverse | bool | If inverse collection | false | |
table | text | The name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
lazy | bool | Enable lazy initialization Default value(s): false |
false | |
cascade | text | Specifies 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-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
order-by | text | Specify table columns that define the iteration order | false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
usage | text | Defines 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
class | text | The name of the element class | true |
@hibernate.collection-element (0..1)
Declares a collection element
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true | |
type | text | The Hibernate type | true | |
length | text | The length of the mapped database table column | false | |
not-null | bool | Is the column nullable | false | |
unique | bool | Is the column unique | false |
@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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true | |
type | text | The Hibernate type | false | |
length | text | The length of the mapped database table column | false |
@hibernate.collection-jcs-cache (0..1)
Enables caching (deprecated)
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
usage | text | Defines 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true |
@hibernate.collection-key-column (0..*)
Defines a column for a collection key
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | The column name | true | |
length | text | The column length | false | |
unique | bool | Is the column unique | false | |
not-null | bool | Is the column nullable | false | |
index | text | The name of an index | false | |
unique-key | text | The name of a unique constraint | false | |
sql-type | text | The SQL column type | false |
@hibernate.collection-many-to-many (0..1)
Declares a many-to-many relationship
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true | |
class | text | Fully qualified class name | false | |
outer-join | text | Enable 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
class | text | Fully qualified class name of the associated class | false |
@hibernate.column (0..*)
Customize column mapping
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | The column name | true | |
length | text | The column length | false | |
unique | bool | Is the column unique | false | |
not-null | bool | Is the column nullable | false | |
index | text | The name of an index | false | |
unique-key | text | The name of a unique constraint | false | |
sql-type | text | The SQL column type | false | |
formula | text | An 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
class | text | A fully qualified class name | false | |
prefix | text | When 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | The name of the parameter | true | |
value | text | The parameter value | true |
@hibernate.id (0..1)
Declares an identifier property
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | false | |
type | text | The Hibernate type | false | |
length | text | The length of the mapped database table column | false | |
unsaved-value | text | A value that distinguishes transient instances with existing persistent state from new transient instances Default value(s): null |
false | |
generator-class | text | The key generator class Valid options are: uuid.hex uuid.string increment assigned native identity sequence hilo seqhilo foreign |
true | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | true | |
class | text | Entity to be used as key in the ternary association maps | true | |
foreign-key | text | The name of the foreign key constraint to associate with this association. | false |
@hibernate.list (0..1)
Defines a List
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
lazy | bool | Enable lazy initialization | false | |
cascade | text | Specifies 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-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
id-type | text | Type of the identifier | true | |
meta-type | text | Meta-type | false |
@hibernate.many-to-any-column (0..*)
Defines a column for the many-to-any type mapping
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
name | text | The column name | true | |
length | text | The column length | false | |
unique | bool | Is the column unique | false | |
not-null | bool | Is the column nullable | false | |
index | text | The name of an index | false | |
unique-key | text | The name of a unique constraint | false | |
sql-type | text | The SQL column type | false |
@hibernate.many-to-one (0..1)
Declares a many-to-one association
Applies to: Hibernate
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | false | |
class | text | The name of the associated class | false | |
cascade | text | Specifies 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-null | bool | If the column is not nullable Default value(s): false |
false | |
unique | bool | If the column is unique Default value(s): false |
false | |
outer-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
insert | bool | Should the column appear in the SQL INSERT. Only applies for version >= 2.0 | false | |
update | bool | Should the column appear in the SQL UPDATE. Only applies for version >= 2.0 | false | |
property-ref | text | The 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-key | text | The name of the foreign key constraint to associate with this association. | false | |
access | text | The strategy Hibernate should use for accessing the property value. Default value(s): property Valid options are: field property ClassName |
false | |
unique | text | Enable 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
lazy | bool | Enable lazy initialization | false | |
cascade | text | Specifies 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-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
sort | text | Specify a sorted collection with natural sort order or a given comparator class | false | |
order-by | text | Specify table columns that define the iteration order | false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
class | text | The name of the associated class | false | |
property-ref | text | bi-directional reference to one-to-one table that holds the foreign key | false | |
constrained | bool | Is there a foreign key constraint | false | |
cascade | text | Specifies which operations should be cascaded from the parent object to the associated object Valid options are: all none save-update delete |
false | |
outer-join | bool | Enable 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-key | text | The name of the foreign key constraint to associate with this association. | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
table | text | The name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
cascade | text | Specifies which operations should be cascaded from the parent object to the associated object Valid options are: all none save-update delete |
false | |
outer-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of the mapped database table column | false | |
type | text | The Hibernate type | false | |
length | text | The length of the mapped database table column | false | |
not-null | bool | If the column is not nullable | false | |
unique | bool | If the column is unique | false | |
insert | bool | Should the column appear in the SQL INSERT | false | |
update | bool | Should the column appear in the SQL UPDATE | false | |
formula | text | Formula for calculating the value of this proerty | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
inverse | bool | If inverse collection Default value(s): false |
false | |
table | text | Defaults to role name: the name of the collection table (not used for one-to-many associations) | false | |
schema | text | The name of a table schema to override the schema declared | false | |
lazy | bool | Enable lazy initialization Default value(s): false |
false | |
cascade | text | Specifies 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-join | text | Enable outer-join fetching Default value(s): auto Valid options are: true false auto |
false | |
sort | text | Specify a sorted collection with natural sort order or a given comparator class | false | |
order-by | text | Specify table columns that define the iteration order | false | |
where | text | An SQL WHERE condition | false | |
batch-size | text | Specify a "batch size" for lazily fetching instances of this collection | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of an column holding the timestamp | false | |
access | text | The 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
Parameter | Type | Applicability | Description | Mandatory |
---|---|---|---|---|
column | text | The name of a column holding the version number | false | |
type | text | The Hibernate type Valid options are: integer short long timestamp calendar |
false | |
access | text | The strategy Hibernate should use for accessing the property value. Default value(s): property Valid options are: field property ClassName |
false | |
unsaved-value | text | A 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 |