| Annotation Types Summary | 
| AccessType | Property Access type
 Prefer the standard Accessannotation | 
| Any | Define a ToOne association pointing to several entity types. | 
| AnyMetaDef | Defines @Any and @manyToAny metadata | 
| AnyMetaDefs | Defines @Any and @ManyToAny set of metadata. | 
| BatchSize | Batch size for SQL loading | 
| Cache | Add caching strategy to a root entity or a collection | 
| Cascade | Apply a cascade strategy on an association | 
| Check | Arbitrary SQL check constraints which can be defined at the class,
 property or collection level | 
| CollectionId | Describe an identifier column for a bag (ie an idbag)
 EXPERIMENTAL: the structure of this annotation might slightly change (generator() mix strategy and generator | 
| CollectionOfElements | Deprecated. use @ElementCollection | 
| Columns | Support an array of columns. | 
| ColumnTransformer | Custom SQL expression used to read the value from and write a value to a column. | 
| ColumnTransformers | Plural annotation for @ColumnTransformer. | 
| DiscriminatorFormula | Discriminator formula
 To be placed at the root entity. | 
| DiscriminatorOptions | Optional annotation to express Hibernate specific discrimintor properties. | 
| Entity | Extends Entitywith Hibernate features | 
| Fetch | Define the fetching strategy used for the given association | 
| FetchProfile | Define the fetching strategy profile. | 
| FetchProfile.FetchOverride |  | 
| FetchProfiles |  | 
| Filter | Add filters to an entity or a target entity of a collection | 
| FilterDef | Filter definition | 
| FilterDefs | Array of filter definitions | 
| FilterJoinTable | Add filters to a join table collection | 
| FilterJoinTables | Add multiple @FilterJoinTable to a collection | 
| Filters | Add multiple @Filters | 
| ForceDiscriminator | Deprecated. use DiscriminatorOptionsinstead | 
| ForeignKey |  | 
| Formula | Formula. | 
| Generated | The annotated property is generated by the database | 
| GenericGenerator | Generator annotation describing any kind of Hibernate
 generator in a detyped manner | 
| GenericGenerators | Array of generic generator definitions | 
| Immutable | Mark an Entity or a Collection as immutable. | 
| Index | Define a DB index | 
| IndexColumn | Describe an index column of a List
 Prefer the standard OrderColumnannotation | 
| JoinColumnOrFormula |  | 
| JoinColumnsOrFormulas |  | 
| JoinFormula | JoinFormula. | 
| LazyCollection | Define the lazy status of a collection | 
| LazyToOne | Define the lazy status of a ToOne association
 (ie OneToOne or ManyToOne) | 
| Loader | Loader Annotation for overwriting Hibernate default FIND method | 
| ManyToAny | Defined a ToMany association pointing to different entity types. | 
| MapKey | Deprecated. Use MapKeyColumnThis is the default behavior for Map properties marked as @OneToMany, @ManyToMany
             or @ElementCollection | 
| MapKeyManyToMany | Deprecated. Use MapKeyJoinColumnMapKeyJoinColumnsThis is the default behavior for Map properties marked as @OneToMany, @ManyToMany
             or @ElementCollection | 
| MapKeyType | Allows defining the type of the key of a persistent map. | 
| MetaValue | Represent a discriminator value associated to a given entity type | 
| NamedNativeQueries | Extends NamedNativeQueriesto hold hibernate NamedNativeQuery
 objects | 
| NamedNativeQuery | Extends NamedNativeQuerywith Hibernate features | 
| NamedQueries | Extends NamedQueriesto hold hibernate NamedQuery
 objects | 
| NamedQuery | Extends NamedQuerywith Hibernate features | 
| NaturalId | This specifies that a property is part of the natural id of the entity. | 
| NotFound | Action to do when an element is not found on a association whiel beeing expected | 
| OnDelete | Strategy to use on collections, arrays and on joined subclasses delete
 OnDelete of secondary tables currently not supported. | 
| OptimisticLock | Whether or not update entity's version on property's change
 If the annotation is not present, the property is involved in the optimistic lock srategy (default) | 
| OrderBy | Order a collection using SQL ordering (not HQL ordering) | 
| ParamDef | A parameter definition | 
| Parameter | Parameter (basically key/value pattern) | 
| Parent | Reference the property as a pointer back to the owner (generally the owning entity) | 
| Persister | Specify a custom persister. | 
| Proxy | Lazy and proxy configuration of a particular class | 
| Sort | Collection sort
 (Java level sorting) | 
| Source | Optional annotation in conjunction with Versionand timestamp version properties. | 
| SQLDelete | SqlDelete Annotation for overwriting Hibernate default DELETE method | 
| SQLDeleteAll | SqlDelete Annotation for overwriting Hibernate default DELETE ALL method | 
| SQLInsert | SqlInsert Annotation for overwriting Hibernate default INSERT INTO method | 
| SQLUpdate | SqlUpdate Annotation for overwriting Hibernate default UPDATE method | 
| Subselect | Map an immutable and read-only entity to a given SQL subselect expression: | 
| Synchronize | Ensures that auto-flush happens correctly and that queries against the derived 
 entity do not return stale data. | 
| Table | Complementary information to a table either primary or secondary | 
| Tables | Plural of Table | 
| Target | Define an explicit target,a voiding reflection and generics resolving | 
| Tuplizer | Define a tuplizer for an entity or a component | 
| Tuplizers | Define a set of tuplizer for an entity or a component | 
| Type | hibernate type | 
| TypeDef | Type definition | 
| TypeDefs | Type definition array | 
| Where | Where clause to add to the element Entity or target entity of a collection
 The clause is written in SQL | 
| WhereJoinTable | Where clause to add to the colleciton join table
 The clause is written in SQL |