Buscar

Todas as anotações JPA

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 1/15
Este artigo fornece 89 anotações de mapeamento JPA para referência rápida e / ou resumo. Vamos começar!
Aprenda JPA em profundidade no Tutorial da Java Persistence API
Anotações da JPA
1. @Access
2. @AssociationOverride
3. @AssociationOverrides
4. @AttributeOverride
5. @AttributeOverrides
6. @Basic
7. @Cacheable
8. @CollectionTable
9. @Column
10. @ColumnResult
11. @ConstructorResult
12. @Convert
13. @Converter
14. @Converts
15. @DiscriminatorColumn
16. @DiscriminatorValue
17. @ElementCollection
18. @Embeddable
19. @ Incorporado
20. @EmbeddedId
21. @Entity
22. @EntityListeners
23. @EntityResult
24. @Enumerated
25. @ExcludeDefaultListeners
26. @ExcludeSuperclassListeners
27. @FieldResult
http://www.javaguides.net/p/jpa-tutorial-java-persistence-api.html
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 2/15
28. @ForeignKey
29. @GeneratedValue
30. @Id
31. @IdClass
32. @Index
33. @ Herança
34. @JoinColumn
35. @JoinColumns
36. @JoinTable
37. @Lob
38. @ManyToMany
39. @ManyToOne
40. @MapKey
41. @MapKeyClass
42. @MapKeyColumn
43. @MapKeyEnumerated
44. @MapKeyJoinColumn
45. @MapKeyJoinColumns
46. @MapKeyTemporal
47. @MappedSuperclass
48. @MapsId
49. @NamedAttributeNode
50. @NamedEntityGraph
51. @NamedEntityGraphs
52. @NamedNativeQueries
53. @NamedNativeQuery
54. @NamedQueries
55. @NamedQuery
56. @NamedStoredProcedureQueries
57. @NamedStoredProcedureQuery
58. @NamedSubgraph
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 3/15
59. @OneToMany
60. @OneToOne
61. @OrderBy
62. @OrderColumn
63. @PersistenceContext
64. @PersistenceContexts
65. @PersistenceProperty
66. @PersistenceUnit
67. @PersistenceUnits
68. @PostLoad
69. @PostPersist
70. @PostRemove
71. @PostUpdate
72. @PrePersist
73. @PreRemove
74. @PreUpdate
75. @PrimaryKeyJoinColumn
76. @PrimaryKeyJoinColumns
77. @QueryHint
78. @SecondaryTable
79. @SecondaryTables
80. @SequenceGenerator
81. @SqlResultSetMapping
82. @SqlResultSetMappings
83. @StoredProcedureParameter
84. @Table
85. @TableGenerator
86. @Temporal
87. @Transient
88. @UniqueConstraint
89. @Version
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 4/15
Vamos descrever cada anotação com links para seus documentos Java e suas seções de documentação oficial.
@Acesso
A anotação @Access é usada para especificar o tipo de acesso da classe de entidade associada, superclasse
mapeada ou o atributo incorporável de classe e entidade.
Veja a seção Tipo de acesso para mais informações.
@AssociationOverride
O @AssociationOverride anotação é utilizado para substituir um mapeamento de associação (por exemplo
 @ManyToOne, @OneToOne, @OneToMany, @ManyToMany) herdada de uma superclasse mapeada ou um embutido.
Consulte a seção Substituindo tipos incorporáveis para obter mais informações.
@AssociationOverrides
O @AssociationOverrides é usado para agrupar várias anotações do @AssociationOverride .
@AttributeOverride
A anotação @AttributeOverride é usada para substituir um mapeamento de atributo herdado de uma
superclasse mapeada ou de um incorporável.
Consulte a seção Substituindo tipos incorporáveis para obter mais informações.
@AttributeOverrides
O @AttributeOverrides é usado para agrupar várias anotações do @AttributeOverride .
@Basic
A anotação @Basic é usada para mapear um tipo de atributo básico para uma coluna do banco de dados.
Consulte o capítulo Tipos básicos para obter mais informações.
@Cacheable
A anotação @Cacheable é usada para especificar se uma entidade deve ser armazenada no cache de
segundo nível.
Consulte o capítulo Cache para obter mais informações.
@CollectionTable
A anotação @CollectionTable é usada para especificar a tabela de banco de dados que armazena os valores
de uma coleção de tipos básica ou incorporável.
Consulte a seção Coleções de tipos incorporáveis para obter mais informações.
@Coluna
http://docs.oracle.com/javaee/7/api/javax/persistence/Access.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#access
http://docs.oracle.com/javaee/7/api/javax/persistence/AssociationOverride.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddable-override
http://docs.oracle.com/javaee/7/api/javax/persistence/AssociationOverrides.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-associationoverride
http://docs.oracle.com/javaee/7/api/javax/persistence/AttributeOverride.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddable-override
http://docs.oracle.com/javaee/7/api/javax/persistence/AttributeOverrides.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-attributeoverride
http://docs.oracle.com/javaee/7/api/javax/persistence/Basic.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic
http://docs.oracle.com/javaee/7/api/javax/persistence/Cacheable.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#caching
http://docs.oracle.com/javaee/7/api/javax/persistence/CollectionTable.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddable-collections
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 5/15
A anotação @Column é usada para especificar o mapeamento entre um atributo básico da entidade e a
coluna da tabela do banco de dados.
Consulte a seção de anotação @Column para obter mais informações.
@ColumnResult
O @ColumnResult anotação é usado em conjunto com
os @SqlResultSetMapping ou @ConstructorResult anotações para mapear uma coluna SQL para um dado
comando SELECT.
Consulte a seção Associações de entidades com as consultas nativas nomeadas para obter mais informações.
@ConstructorResult
A anotação @ConstructorResult é usada em conjunto com as anotações @SqlResultSetMapping para
mapear as colunas de uma determinada consulta SELECT para um determinado construtor de objeto.
Consulte a seção Vários valores escalares NamedNativeQuery com ConstructorResult para obter mais
informações.
@Converter
A anotação @Convert é usada para especificar a implementação do AttributeConverter usada para
converter o atributo básico anotado no momento.
Veja a seção AttributeConverter para mais informações.
24.1.13 @Conversor
A anotação @Converter é usada para especificar que a implementação atual do AttributeConverter
daanotação pode ser usada como um conversor de atributo básico JPA.
Veja a seção AttributeConverter para mais informações.
@Converts
A anotação @Converts é usada para agrupar várias anotações @Convert .
Veja a seção AttributeConverter para mais informações.
@DiscriminatorColumn
A anotação @DiscriminatorColumn é usada para especificar o nome da coluna discriminadora e o tipo de
discriminador para as estratégias de herança SINGLE_TABLE e JOINED.
Veja a seção Discriminador para mais informações.
@DiscriminatorValue
A anotação @DiscriminatorValue é usada para especificar qual valor da coluna discriminador é usado para
mapear a entidade anotada no momento.
http://docs.oracle.com/javaee/7/api/javax/persistence/Column.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-column-annotation
http://docs.oracle.com/javaee/7/api/javax/persistence/ColumnResult.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-sqlresultsetmappinghttp://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-constructorresult
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-composite-key-entity-associations_named-query-example
http://docs.oracle.com/javaee/7/api/javax/persistence/ConstructorResult.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-sqlresultsetmapping
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-multiple-scalar-values-dto-NamedNativeQuery-example
http://docs.oracle.com/javaee/7/api/javax/persistence/Convert.html
http://docs.oracle.com/javaee/7/api/javax/persistence/AttributeConverter.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-enums-attribute-converter
http://docs.oracle.com/javaee/7/api/javax/persistence/Converter.html
http://docs.oracle.com/javaee/7/api/javax/persistence/AttributeConverter.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-enums-attribute-converter
http://docs.oracle.com/javaee/7/api/javax/persistence/Converts.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-convert
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-enums-attribute-converter
http://docs.oracle.com/javaee/7/api/javax/persistence/DiscriminatorColumn.html
http://docs.oracle.com/javaee/7/api/javax/persistence/DiscriminatorColumn.html#discriminatorType--
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity-inheritance-discriminator
http://docs.oracle.com/javaee/7/api/javax/persistence/DiscriminatorValue.html
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 6/15
Veja a seção Discriminador para mais informações.
@ElementCollection
A anotação @ElementCollection é usada para especificar uma coleção de tipos básicos ou incorporáveis.
Veja a seção Coleções para mais informações.
@Embeddable
A anotação @Embeddable é usada para especificar tipos incorporáveis. Como os tipos básicos, os tipos
incorporáveis não têm identidade, sendo gerenciados por sua entidade proprietária.
Veja a seção Embeddables para mais informações.
@Embutido
A anotação @Embedded é usada para especificar que um determinado atributo de entidade represente um
tipo incorporável.
Veja a seção Embeddables para mais informações.
@EmbeddedId
A anotação @EmbeddedId é usada para especificar que o identificador de entidade é um tipo incorporável.
Consulte a seção Identificadores compostos com @EmbeddedId para obter mais informações.
@Entidade
A anotação @Entity é usada para especificar que a classe de anotação atualmente representa um tipo de
entidade. Diferentemente dos tipos básico e incorporável, os tipos de entidade têm uma identidade e seu
estado é gerenciado pelo contexto de persistência subjacente.
Veja a seção Entidade para mais informações.
@EntityListeners
A anotação @EntityListeners é usada para especificar uma matriz de classes de ouvinte de retorno de
chamada usadas pela entidade atualmente anotada.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@EntityResult
A anotação @EntityResult é usada com a anotação @SqlResultSetMapping para mapear as colunas
selecionadas para uma entidade.
Consulte a seção Associações de entidades com as consultas nativas nomeadas para obter mais informações.
@Enumerated
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity-inheritance-discriminator
http://docs.oracle.com/javaee/7/api/javax/persistence/ElementCollection.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections
http://docs.oracle.com/javaee/7/api/javax/persistence/Embeddable.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddables
http://docs.oracle.com/javaee/7/api/javax/persistence/Embedded.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#embeddables
http://docs.oracle.com/javaee/7/api/javax/persistence/EmbeddedId.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-composite-aggregated
http://docs.oracle.com/javaee/7/api/javax/persistence/Entity.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity
http://docs.oracle.com/javaee/7/api/javax/persistence/EntityListeners.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/EntityResult.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-sqlresultsetmapping
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-composite-key-entity-associations_named-query-example
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 7/15
A anotação @Enumerated é usada para especificar que um atributo de entidade representa um tipo
enumerado.
Consulte a seção do tipo básico @Enumerated para obter mais informações.
@ExcludeDefaultListeners
A anotação @ExcludeDefaultListeners é usada para especificar que a entidade anotada no momento ignora
a chamada de qualquer ouvinte padrão.
Consulte a seção Excluir ouvintes de entidade padrão para obter mais informações.
@ExcludeSuperclassListeners
A anotação @ExcludeSuperclassListeners é usada para especificar que a entidade anotada atualmente
ignora a chamada de ouvintes declarados por sua superclasse.
Consulte a seção Excluir ouvintes de entidade padrão para obter mais informações.
@FieldResult
A anotação @FieldResult é usada com a anotação @EntityResult para mapear as colunas selecionadas
para os campos de alguma entidade específica.
Consulte a seção Associações de entidades com as consultas nativas nomeadas para obter mais informações.
@ForeignKey
A anotação @ForeignKey é usada para especificar a chave estrangeira associada de
um mapeamento @JoinColumn . A @ForeignKeyannotation só é usado se a ferramenta de geração de
esquema automático está habilitado. Nesse caso, permite personalizar a definição de chave estrangeira
subjacente.
Consulte a seção @ManyToOne with @ForeignKey para obter mais informações.
@GeneratedValue
A anotação @GeneratedValue especifica que o valor do identificador da entidade é gerado automaticamente
usando uma coluna de identidade, uma sequência de banco de dados ou um gerador de tabela. O Hibernate
suporta o @GeneratedValue mapeamento mesmo para UUIDidentifiers.
Consulte a seção Identificadores gerados automaticamente para obter mais informações.
@Eu iria
A anotação @Id especifica o identificador da entidade. Uma entidade deve sempre ter um atributo
identificador, que é usado ao carregar a entidade em um determinado contexto de persistência.
Veja a seção Identificadores para mais informações.
@IdClass
http://docs.oracle.com/javaee/7/api/javax/persistence/Enumerated.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-enums-Enumerated
http://docs.oracle.com/javaee/7/api/javax/persistence/ExcludeDefaultListeners.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-exclude-default-listener
http://docs.oracle.com/javaee/7/api/javax/persistence/ExcludeSuperclassListeners.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-exclude-default-listener
http://docs.oracle.com/javaee/7/api/javax/persistence/FieldResult.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-entityresulthttp://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-composite-key-entity-associations_named-query-example
http://docs.oracle.com/javaee/7/api/javax/persistence/ForeignKey.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-joincolumn
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-one-example
http://docs.oracle.com/javaee/7/api/javax/persistence/GeneratedValue.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-simple-generated
http://docs.oracle.com/javaee/7/api/javax/persistence/Id.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 8/15
A anotação @IdClass será usada se a entidade atual tiver definido um identificador composto. Uma classe
separada encapsula todos os atributos do identificador, que são espelhados pelo mapeamento de entidade
atual.
Consulte a seção Identificadores compostos com @IdClass para obter mais informações.
@Índice
A anotação @Index é usada pela ferramenta de geração automatizada de esquema para criar um índice de
banco de dados.
Consulte o capítulo Índice de colunas para obter mais informações.
24.1.33 @Herança
A anotação @Inheritance é usada para especificar a estratégia de herança de uma hierarquia de classe de
entidade.
Veja a seção Herança para mais informações.
@JoinColumn
A anotação @JoinColumn é usada para especificar a coluna FOREIGN KEY usada ao ingressar em uma
associação de entidade ou em uma coleção incorporável.
Consulte a seção @ManyToOne with @JoinColumn para obter mais informações.
@JoinColumns
A anotação @JoinColumns é usada para agrupar várias anotações @JoinColumns , que são usadas ao
mapear a associação de entidades ou uma coleção incorporável usando um identificador composto
@JoinTable
A anotação @JoinTable é usada para especificar a tabela de links entre duas outras tabelas do banco de
dados.
Consulte a seção de mapeamento @JoinTable para obter mais informações.
@Lob
A anotação @Lob é usada para especificar que o atributo da entidade anotada no momento representa um
tipo de objeto grande.
Veja a seção de mapeamento de BLOB para mais informações.
@Muitos para muitos
A anotação @ManyToMany é usada para especificar um relacionamento de banco de dados muitos para
muitos.
Consulte a seção de mapeamento @ManyToMany para obter mais informações.
http://docs.oracle.com/javaee/7/api/javax/persistence/IdClass.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-composite-nonaggregated
http://docs.oracle.com/javaee/7/api/javax/persistence/Index.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#schema-generation-columns-index
http://docs.oracle.com/javaee/7/api/javax/persistence/Inheritance.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity-inheritance
http://docs.oracle.com/javaee/7/api/javax/persistence/JoinColumn.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-one-example
http://docs.oracle.com/javaee/7/api/javax/persistence/JoinColumns.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-joincolumn
http://docs.oracle.com/javaee/7/api/javax/persistence/JoinTable.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-unidirectional-example
http://docs.oracle.com/javaee/7/api/javax/persistence/Lob.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-blob-example
http://docs.oracle.com/javaee/7/api/javax/persistence/ManyToMany.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-many
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 9/15
@ManyToOne
A anotação @ManyToOne é usada para especificar um relacionamento de banco de dados muitos para um.
Consulte a seção de mapeamento do @ManyToOne para obter mais informações.
@Chave do mapa
A anotação @MapKey é usada para especificar a chave de uma associação java.util.Map para a qual o tipo
de chave é a chave primária ou um atributo da entidade que representa o valor do mapa.
Consulte a seção de mapeamento @MapKey para obter mais informações.
@MapKeyClass
A anotação @MapKeyClass é usada para especificar o tipo da chave de mapa de uma associação
java.util.Map.
Consulte a seção de mapeamento @MapKeyClass para obter mais informações.
@MapKeyColumn
A anotação @MapKeyColumn é usada para especificar a coluna do banco de dados, que armazena a chave
de uma associação java.util.Mapassiation para a qual a chave do mapa é um tipo básico.
Consulte a seção de mapeamento @MapKeyType para obter um exemplo
de @MapKeyColumn uso de anotação.
@MapKeyEnumerated
A anotação @MapKeyEnumerated é usada para especificar que a chave da associação java.util.Map é um
Java Enum.
Consulte a seção de mapeamento @MapKeyEnumerated para obter mais informações.
@MapKeyJoinColumn
A anotação @MapKeyJoinColumn é usada para especificar que a chave da associação java.util.Map é uma
associação de entidade. A coluna de chave do mapa é uma FOREIGN KEY em uma tabela de links que
também une a tabela do proprietário do Mapa à tabela em que o valor do Mapa reside.
Consulte a seção de mapeamento @MapKeyJoinColumn para obter mais informações.
@MapKeyJoinColumns
A anotação @MapKeyJoinColumns é usada para agrupar
vários mapeamentos @MapKeyJoinColumnquando a chave de associação java.util.Map usa um
identificador composto.
@MapKeyTemporal
A anotação @MapKeyTemporal é usada para especificar que a chave da associação java.util.Map é
um @TemporalType (por exemplo, DATE, TIME, TIMESTAMP).
http://docs.oracle.com/javaee/7/api/javax/persistence/ManyToOne.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-one
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-many-to-one
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKey.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-unidirectional-example
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyClass.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-key-class
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyColumn.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-custom-key-type-mapping-example
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyEnumerated.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-bidirectional-example
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyJoinColumn.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-value-type-entity-key-example
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyJoinColumns.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-mapkeyjoincolumn
http://docs.oracle.com/javaee/7/api/javax/persistence/MapKeyTemporal.html
http://docs.oracle.com/javaee/7/api/javax/persistence/TemporalType.html
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 10/15
Consulte a seçãode mapeamento @MapKeyTemporal para obter mais informações.
@MappedSuperclass
A anotação @MappedSuperclass é usada para especificar que os atributos de tipo anotados atualmente são
herdados por qualquer entidade de subclasse.
Consulte a seção @MappedSuperclass para obter mais informações.
@MapsId
A anotação @MapsId é usada para especificar que o identificador da entidade é mapeado pela
anotação @ManyToOne ou @OneToOne associação atualmente .
Consulte a seção de mapeamento @MapsId para obter mais informações.
@NamedAttributeNode
A anotação @NamedAttributeNode é usada para especificar cada nó de atributo individual que precisa ser
buscado por um Gráfico de Entidades.
Consulte a seção Obter gráfico para obter mais informações.
@NamedEntityGraph
A anotação @NamedEntityGraph é usada para especificar um Gráfico de Entidades que pode ser usado por
uma consulta de entidade para substituir o plano de busca padrão.
Consulte a seção Obter gráfico para obter mais informações.
@NamedEntityGraphs
A anotação @NamedEntityGraphs é usada para agrupar várias anotações @NamedEntityGraph .
24.1.52 @NamedNativeQueries
A anotação @NamedNativeQueries é usada para agrupar várias anotações @NamedNativeQuery .
Consulte a seção de mapeamento CRUD personalizado para obter mais informações.
@NamedNativeQuery
A anotação @NamedNativeQuery é usada para especificar uma consulta SQL nativa que pode ser
recuperada posteriormente por seu nome.
Consulte a seção de mapeamento CRUD personalizado para obter mais informações.
@NamedQueries
A anotação @NamedQueries é usada para agrupar várias anotações @NamedQuery .
@NamedQuery
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-map-unidirectional-example
http://docs.oracle.com/javaee/7/api/javax/persistence/MappedSuperclass.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#entity-inheritance-mapped-superclass
http://docs.oracle.com/javaee/7/api/javax/persistence/MapsId.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-derived-mapsid
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedAttributeNode.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#fetching-strategies-dynamic-fetching-entity-graph-example
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedEntityGraph.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#fetching-strategies-dynamic-fetching-entity-graph-example
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedEntityGraphs.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-namedentitygraph
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedNativeQueries.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-namednativequery
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-custom-crud-example
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedNativeQuery.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-custom-crud-example
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedQueries.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-namedquery
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 11/15
A anotação @NamedQuery é usada para especificar uma consulta JPQL que pode ser recuperada
posteriormente por seu nome.
Consulte a seção @NamedQuery para obter mais informações.
@NamedStoredProcedureQueries
A anotação @NamedStoredProcedureQueries é usada para agrupar
várias anotações @NamedStoredProcedureQuery .
@NamedStoredProcedureQuery
A anotação @NamedStoredProcedureQuery é usada para especificar uma consulta de procedimento
armazenado que pode ser recuperada posteriormente por seu nome.
Consulte a seção Usando consultas nomeadas para chamar procedimentos armazenados para obter mais
informações.
@NamedSubgraph
A anotação @NamedSubgraph usada para especificar um subgráfico em um Gráfico de Entidades.
Consulte a seção Subgráfico Buscar para obter mais informações.
@Um para muitos
A anotação @OneToMany é usada para especificar um relacionamento de banco de dados um para muitos.
Consulte a seção de mapeamento @OneToMany para obter mais informações.
@Um a um
A anotação @OneToOne é usada para especificar um relacionamento de banco de dados um a um.
Consulte a seção de mapeamento @OneToOne para obter mais informações.
@Ordenar por
A anotação @OrderBy é usada para especificar os atributos da entidade usados para classificar ao buscar a
coleção anotada no momento.
Consulte a seção de mapeamento @OrderBy para obter mais informações.
@OrderColumn
A anotação @OrderColumn é usada para especificar que a ordem de coleta de anotações atual deve ser
materializada no banco de dados.
Consulte a seção de mapeamento @OrderColumn para obter mais informações.
@PersistenceContext
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedQuery.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#jpql-api-named-query-example
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedStoredProcedureQueries.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-namedstoredprocedurequery
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedStoredProcedureQuery.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-sp-named-query
http://docs.oracle.com/javaee/7/api/javax/persistence/NamedSubgraph.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#fetching-strategies-dynamic-fetching-entity-subgraph
http://docs.oracle.com/javaee/7/api/javax/persistence/OneToMany.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-one-to-many
http://docs.oracle.com/javaee/7/api/javax/persistence/OneToOne.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#associations-one-to-one
http://docs.oracle.com/javaee/7/api/javax/persistence/OrderBy.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-unidirectional-ordered-list
http://docs.oracle.com/javaee/7/api/javax/persistence/OrderColumn.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#collections-unidirectional-ordered-list-order-column-example
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 12/15
A anotação @PersistenceContext é usada para especificar o EntityManager que precisa ser injetado como
uma dependência.
Consulte a seção de mapeamento @PersistenceContext para obter mais informações.
@PersistenceContexts
A anotação @PersistenceContexts é usada para agrupar várias anotações @PersistenceContext .
@PersistenceProperty
A anotação @PersistenceProperty é usada pela anotação @PersistenceContext para declarar propriedades
do provedor JPA que são passadas para o contêiner subjacente quando a EntityManager instância é criada.
Consulte a seção de mapeamento @PersistenceProperty para obter mais informações.
@PersistenceUnit
A anotação @PersistenceUnit é usada para especificar o EntityManagerFactory que precisa ser injetado
como uma dependência.
Consulte a seção de mapeamento @PersistenceUnit para obter mais informações.
@PersistenceUnits
A anotação @PersistenceUnits é usada para agrupar várias anotações @PersistenceUnit .
@PostLoad
A anotação @PostLoadé usada para especificar um método de retorno de chamada que é acionado após o
carregamento de uma entidade.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PostPersist
A anotação @PostPersist é usada para especificar um método de retorno de chamada que é acionado após a
persistência de uma entidade.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PostRemove
A anotação @PostRemove é usada para especificar um método de retorno de chamada que é acionado após
a remoção de uma entidade.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PostUpdate
A anotação @PostUpdate é usada para especificar um método de retorno de chamada que é acionado após a
atualização de uma entidade.
http://docs.oracle.com/javaee/7/api/javax/persistence/PersistenceContext.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#bootstrap-jpa-compliant-PersistenceContext-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PersistenceContexts.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-persistencecontext
http://docs.oracle.com/javaee/7/api/javax/persistence/PersistenceProperty.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-persistencecontext
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#bootstrap-jpa-compliant-PersistenceContext-configurable-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PersistenceUnit.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#bootstrap-jpa-compliant-PersistenceUnit-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PersistenceUnits.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-persistenceunit
http://docs.oracle.com/javaee/7/api/javax/persistence/PostLoad.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PostPersist.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PostRemove.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PostUpdate.html
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 13/15
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PrePersist
A anotação @PrePersist é usada para especificar um método de retorno de chamada que é acionado antes da
persistência de uma entidade.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PreRemove
A anotação @PreRemove é usada para especificar um método de retorno de chamada que é acionado antes
que uma entidade seja removida.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PreUpdate
A anotação @PreUpdate é usada para especificar um método de retorno de chamada que é acionado antes
que uma entidade seja atualizada.
Consulte a seção de retornos de chamada JPA para obter mais informações.
@PrimaryKeyJoinColumn
A anotação @PrimaryKeyJoinColumn é usada para especificar que a coluna de chave primária da entidade
atualmente anotada também é uma chave estrangeira para outra entidade (por exemplo, uma tabela de classe
base em uma estratégia de herança JOINED, a tabela primária em um mapeamento de tabela secundária ou a
tabela pai em um @OneToOne relacionamento).
Consulte a seção de mapeamento @PrimaryKeyJoinColumn para obter mais informações.
@PrimaryKeyJoinColumns
A anotação @PrimaryKeyJoinColumns é usada para agrupar várias anotações @PrimaryKeyJoinColumns.
@QueryHint
A anotação @QueryHint é usada para especificar uma dica de provedor JPA usada por a @NamedQuery ou a
 @NamedNativeQueryannotation.
Consulte a seção @QueryHint para obter mais informações.
@SecondaryTable
A anotação @SecondaryTable é usada para especificar uma tabela secundária para a entidade anotada no
momento.
Consulte a seção de mapeamento @SecondaryTable para obter mais informações.
@SecondaryTables
A anotação @SecondaryTables é usada para agrupar várias anotações @SecondaryTable .
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PrePersist.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PreRemove.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PreUpdate.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
http://docs.oracle.com/javaee/7/api/javax/persistence/PrimaryKeyJoinColumn.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-derived-primarykeyjoincolumn
http://docs.oracle.com/javaee/7/api/javax/persistence/PrimaryKeyJoinColumns.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-primarykeyjoincolumn
http://docs.oracle.com/javaee/7/api/javax/persistence/QueryHint.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#jpa-read-only-entities-native-example
http://docs.oracle.com/javaee/7/api/javax/persistence/SecondaryTable.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-custom-crud-secondary-table-example
http://docs.oracle.com/javaee/7/api/javax/persistence/SecondaryTables.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-secondarytable
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 14/15
@SequenceGenerator
A anotação @SequenceGenerator é usada para especificar a sequência do banco de dados usada pelo
gerador de identificadores da entidade atualmente anotada.
Consulte a seção de mapeamento @SequenceGenerator para obter mais informações.
@SqlResultSetMapping
A anotação @SqlResultSetMapping é usada para especificar o ResultSet mapeamento de uma consulta
SQL nativa ou de um procedimento armazenado.
Consulte a seção de mapeamento SqlResultSetMapping para obter mais informações.
@SqlResultSetMappings
A anotação @SqlResultSetMappings é usada para agrupar várias anotações @SqlResultSetMapping .
@StoredProcedureParameter
A anotação @StoredProcedureParameter é usada para especificar um parâmetro de
uma @NamedStoredProcedureQuery .
Consulte a seção Usando consultas nomeadas para chamar procedimentos armazenados para obter mais
informações.
@Tabela
A anotação @Table é usada para especificar a tabela principal da entidade atualmente anotada.
Consulte a seção de mapeamento da @Table para obter mais informações.
@TableGenerator
A anotação @TableGenerator é usada para especificar a tabela de banco de dados usada pelo gerador de
identidade da entidade atualmente anotada.
Consulte a seção de mapeamento @TableGenerator para obter mais informações.
@Temporal
A anotação @Temporal é usada para especificar o TemporalType atributo de entidade java.util.Date ou
java.util.Calendar atualmente anotado.
Consulte o capítulo Tipos temporais básicos para obter mais informações.
@Transient
A anotação @Transient é usada para especificar que um determinadoatributo de entidade não deve ser
persistido.
Consulte a seção de mapeamento @Transient para obter mais informações.
http://docs.oracle.com/javaee/7/api/javax/persistence/SequenceGenerator.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-generators-sequence-configured
http://docs.oracle.com/javaee/7/api/javax/persistence/SqlResultSetMapping.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-composite-key-entity-associations_named-query-example
http://docs.oracle.com/javaee/7/api/javax/persistence/SqlResultSetMappings.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-sqlresultsetmapping
http://docs.oracle.com/javaee/7/api/javax/persistence/StoredProcedureParameter.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#annotations-jpa-namedstoredprocedurequery
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-sp-named-query
http://docs.oracle.com/javaee/7/api/javax/persistence/Table.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-custom-crud-secondary-table-example
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#sql-custom-crud-secondary-table-example
http://docs.oracle.com/javaee/7/api/javax/persistence/TableGenerator.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#identifiers-generators-table-configured-mapping-example
http://docs.oracle.com/javaee/7/api/javax/persistence/Temporal.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#basic-datetime
http://docs.oracle.com/javaee/7/api/javax/persistence/Transient.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#events-jpa-callbacks-example
26/07/2020 Todas as anotações JPA: Anotações de mapeamento - DZone Java
https://dzone.com/articles/all-jpa-annotations-mapping-annotations 15/15
@Restrição única
A anotação @UniqueConstraint é usada para especificar uma restrição exclusiva a ser incluída pelo gerador
de esquema automatizado para a tabela principal ou secundária associada à entidade atualmente anotada.
Consulte o capítulo de restrição exclusiva das colunas para obter mais informações.
@Versão
A anotação @Version é usada para especificar o atributo de versão usado para o bloqueio otimista.
http://docs.oracle.com/javaee/7/api/javax/persistence/UniqueConstraint.html
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#schema-generation-columns-unique-constraint
http://docs.jboss.org/hibernate/orm/5.3/userguide/html_single/Hibernate_User_Guide.html#schema-generation-columns-unique-constraint
http://docs.oracle.com/javaee/7/api/javax/persistence/Version.html

Outros materiais