Pular para o conteúdo principal

Anotações do JPA

 Este arquivo fornece as anotações de mapeamento do JPA para referência rápida e/ou resumo. Vamos começar!

Vamos descrever cada anotação com links para o seu documento Java e suas seções seções de documentação oficial.

@Access

A anotação @Access é usada para especificar o tipo de acesso da classe de entidade associada, superclasse mapeada ou atributo de classe e entidade incorporável.

@AssociationOverride

A anotação @AssociationOverride é usada para substituir um mapeamento de associação (por exemple, @ManyToOne@OneToOne@OneToMany@ManyToMany) herdado de uma superclasse mapeada ou de um incorporável.

@AssociationOverrides

O @AssociationOverrides é usado para agrupar várias anotações @AssociationOverride.

@AttributeOverride

A anotação @AttributeOverride é usada para substituir um mapeamento de atributo herdado de uma superclasse mapeada ou de um incorporável.

@AttributeOverrides

O @AttributeOverrides é usado para agrupar várias anotações @AttributeOverride

@Basic

A anotação @Basic é usada para mapear um tipo de atributo básico para uma coluna do banco de dados.

@Cacheable

A anotação @Cacheable é usada para especificar se uma entidade deve ser armazenada no cache de segundo nível.

@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.

@Column

A anotação @Column é usada para especificar o mapeamento entre um atributo de entidade básico e a coluna da tabela de banco de dados.

@ColumnResult

A anotação @ColumnResult é usada em conjunto com as anotaçãoes @SqlResultSetMapping ou @ConstructorResult para mapear uma coluna SQL para uma determinada consulta SELECT.

@ConstructorResult

A anotação @ConstructorResult é usada em conjunto com as anotações @SqlResultSetMapping para mapear colunas de uma determinada consulta SELECT para um determinado construtor de objeto.

@Convert

A anotação @Convert é usada para especificar a implementação de AttributeConverter usada para converter o atributo básico atualmente anotado.

@Converter

A anotação @Converter é usada para especificar que a implementação do atributo atual AttributeConverter pode ser usada como um conversor de atributo básico JPA.

@Converts

A anotação @Converts é usada para agrupar várias anotações @Convert.

@DiscriminatorColumn

A anotação @DiscriminatorColumn é usada para especificar o nome da coluna discriminadora e o tipo discriminador para as estratégias SINGLE_TABLE e JOINED.

@DiscriminatorValue

A anotação @DiscriminatorValue é usada para especificar qual valor da coluna descriminada é usado para mapear a entidade atualmente anotada.

@ElementCollection

A anotação @ElementCollection é usada para especificar uma coleção de tipos básicos ou incorporáveis.

@Embeddable

A anotação @Embeddable é usada para especificar tipos incorporáveis. Como os tipos básicos, os tipos incorporáveis não tem identidade, sendo gerenciados por sua entidade proprietária.

@Embedded

A anotação @Embedded é usada para especificar que um determinado atributo de entidade representa um tipo incorporável.

@EmbeddedId

A anotação @EmbeddedId é usada para especificar que o identificador de entidade é um tipo incorporável.

@Entity

A anotação @Entity é usada para especificar que a classe anotada atualmente representa um tipo de entidade. Ao contrário dos tipos básicos e incorporável, os tipode de entidade tem uma identidade e seu estado é gerenciado pelo contexto de pesistência subjacente.

@EntityListeners

A anotação @EntityListeners é usada para especificar uma matriz de classes de ouvintes de retorno de chamada que são usadas pela entidade anotada atualmente.

@EntityResult

A anotação @EntityResult é usada com a anotação @SqlResultSetMapping para mapear as colunas selecionadas para uma entidade.

@Enumerated

A anotação @Enumerated é usada para especificar que um atributo de entidade representa um tipo enumerado.

@ExcludeDefaultListeners

A anotação @ExcludeDefaultListeners é usada para especificar que a entidade atualmente anotada pula a invocação de qualquer ouvinte padrão;

@ExcludeSuperclassListeners

A anotação @ExcludeSuperclassListeners é usada para especificar que a entidade atualmente anotada pula a invocação de ouvintes declarados por sua superclasse.

@FieldResult

A anotação @FieldResult é usada com a anotação @EntityResult para mapear as colunas selecionadas para os campos de alguma entidade específica.

@ForeignKey

A anotação @ForeignKey é usada para especificar a chave estrangeira associada ao mapeamento @JoinColumn. A @ForeignKeyannotation é usada apenas se a ferramenta de geração automática de esquema estiver ativada. Nesse caso, ele permite que você personalize a definição de chave estrangeira subjacente.

@GeneratedValue

A anotação @GeneratedValue especifica que o valor do identificador de entidade é gerado automaticamente usando uma coluna de identidade, uma sequência de banco de dados ou um gerador de tabelas. O Hibernate suporta o mapeamento @GeneratedValue mesmo para os identificadores de UUID.

@Id

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.

@IdClass

A anotação @IdClass é usada se a entidade atual definiu um identificador composto. Uma classe separada encapsula todos os atributos do identificador, que são espelhados pelo mapeamento de entidade atual.

@Index

A anotação @Index é usada pela ferramenta de geração automática de esquemas para criar um índice do banco de dados.

@Inheritance

A anotação @Inheritance é usada para especificar a estratégia de herança de uma determinada hierarquia de classes de entidade.

@JoinColumn

A anotação @JoinColumn é usada para especificar a coluna FOREIGN KEY usada ao ingressar em uma associação de entidades ou em uma coleção incorporável.

@JoinColumns

A anotação @JoinColumns é usada para agrupar várias anotações @JoinColumn, 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 de banco de dados.

@Lob

A anotação @Lob é usada para especificar que o atributo de entidade atualmente anotado representa um tipo de objeto grande.

@ManyToMany

A anotação @ManyToMany é usada para especificar um relacionamento de banco muitos para muitos.

@ManyToOne

A anotação @ManyToOne é usada para especificar um relacionamento de banco de dados muitos-para-um.

@Mapkey

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.

@MapKeyClass

A anotação @MapKeyClass é usada para especificar o tipo da chave do mapa de uma associação java.util.Map.

@MapKeyColumn

A anotação @MapKeyColumn é usada para especificar a coluna do banco de dados, que armazena a chave de uma java.util.Mapassociation para a qual a chave do mapa é um tipo básico.

@MapKeyEnumerated

A anotação @MapKeyEnumerated é usada para especificar que a chave da associação java.util.Map é um Java Enum.

@MapKeyJoinColumn

A anotação @MapKeyJoinColumn é usada para especificar que a chave da associação java.util.Map é uma associação de entidades. A coluna da chave do mapa é uma FOREIGN KEY em uma tabela de links que também se junta à tabela do proprietário do Mapa com a tabela em que reside o valor do Mapa.

@MapKeyJoinColumns

A anotação @MapKeyJoinColumns é usada para agrupar vários mapeamentos @MapKeyJoinColumn quando 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).

@MappedSuperclass

A anotação @MappedSuperclass é usada para especificar que os atributos de tipo anotados atualmente são herdados por qualquer entidade de subclasse.

@MapsId

A anotação @MapsId é usada para especificar que o identificador de entidade é mapeado pelo @ManyToOne atualmente anotado ou @OneToOne associado.

@NamedAttributeNode

A anotação @NamedAttributeNode é usada para especificar cada nó de atributo individual que precisa ser buscado por um Gráfico de Entidade.

@NamedEntityGraph

A anotação @NamedEntityGraph é usada para especificar um Gráfico de Entidade que pode ser usado por uma consulta de entidade para substituir o plano de carregamento padrão.

@NamedEntityGraphs

A anotação @NamedEntityGraphs é usada para agrupar várias anotações @NamedEntityGraph.

@NamedNativeQueries

A anotação @NamedNativeQueries é usada para agrupar várias anotações @NamedNativeQuery.

@NamedNativeQuery

A anotação @NamedNativeQuery é usada para especificar uma consulta SQL nativa que pode ser recuperada posteriormente por seu nome.

@NamedQueries

A anotação @NamedQueries é usada para agrupar várias anotações @NamedQuery .

@NamedQuery

A anotação @NamedQuery é usada para especificar uma consulta JPQL que pode ser recuperada posteriormente por seu nome.

@NamedStoredProcedureQueries

A anotação @NamedStoredProcedureQueries é usada para agrupar várias anotações de @NamedStoredProcedureQuery .

@NamedStoredProcedureQuery

A anotação @NamedStoredProcedureQuery é usada para especificar uma consulta de procedimento armazenado que pode ser recuperada posteriormente por seu nome.

@NamedSubgraph

A anotação @NamedSubgraph usada para especificar um subgráfico em um gráfico de entidades.

@OneToMany

A anotação @OneToMany é usada para especificar um relacionamento de banco de dados um-para-muitos.

@OneToOne

A anotação @OneToOne é usada para especificar um relacionamento de banco de dados um-para-um.

@OrderBy

A anotação @OrderBy é usada para especificar os atributos da entidade usados ​​para classificação ao buscar a coleção atualmente anotada.

@OrderColumn

A anotação @OrderColumn é usada para especificar que a ordem de coleta de anotação atual deve ser materializada no banco de dados.

@PersistenceContext

A anotação @PersistenceContext é usada para especificar o EntityManager que precisa ser injetado como dependência.

@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 o EntityManager instância é criada.

@PersistenceUnit

A anotação @PersistenceUnit é usada para especificar o EntityManagerFactory que precisa ser injetado como dependência.

@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 depois que uma entidade é carregada.

@PostPersist

A anotação @PostPersist é usada para especificar um método de retorno de chamada que é acionado após uma entidade ser persistida.

@PostRemove

A anotação @PostRemove é usada para especificar um método de retorno de chamada que é acionado depois que uma entidade é removida.

@PostUpdate

A anotação @PostUpdate é usada para especificar um método de retorno de chamada que é acionado depois que uma entidade é atualizada.

@PrePersist

A anotação @PrePersist é usada para especificar um método de retorno de chamada que é acionado antes que uma entidade seja persistida.

@PreRemove

A anotação @PreRemove é usada para especificar um método de retorno de chamada que é acionado antes que uma entidade seja removida.

@PreUpdate

A anotação @PreUpdate é usada para especificar um método de retorno de chamada que é acionado antes de uma entidade ser atualizada.

@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 alguma 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ário ou tabela pai em um @OneToOne relação).

@PrimaryKeyJoinColumns

A anotação @PrimaryKeyJoinColumns é usada para agrupar várias anotações @PrimaryKeyJoinColumn .

@QueryHint

A anotação @QueryHint é usada para especificar uma dica do provedor JPA usada por uma @NamedQuery ou por uma @NamedNativeQueryannotation.

@SecondaryTable

A anotação @SecondaryTable é usada para especificar uma tabela secundária para a entidade atualmente anotada.

@SecondaryTables

A anotação @SecondaryTables é usada para agrupar várias anotações de @SecondaryTable .

@SequenceGenerator

A anotação @SequenceGenerator é usada para especificar a sequência de banco de dados usada pelo gerador de identificadores da entidade anotada atualmente.

@SqlResultSetMapping

A anotação @SqlResultSetMapping é usada para especificar o ResultSet mapeamento de uma consulta SQL nativa ou procedimento armazenado.

@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 um @NamedStoredProcedureQuery .

@Table

A anotação @Table é usada para especificar a tabela principal da entidade atualmente anotada.

@TableGenerator

A anotação @TableGenerator é usada para especificar a tabela de banco de dados usada pelo gerador de identidade da entidade atualmente anotada.

@Temporal

A anotação @temporal é usada para especificar o tipo de tempo do atributo de entidade java.util.Date ou java.util.Calendar atualmente anotado.

@Transient

A anotação @Transient é usada para especificar que um determinado atributo de entidade não deve ser persistido.

@UniqueConstraint

A anotação @UniqueConstraint é usada para especificar uma restrição exclusiva a ser incluída pelo gerador automático de esquemas para a tabela primária ou secundária associada à entidade anotada atualmente.

@Version

A anotação @Version é usada para especificar o atributo de versão usado para bloqueio otimista.

Comentários

Postagens mais visitadas deste blog

Saída de mercadorias (MIGO_GI)

Saída Logística - Administração de Materiais - Administração de Estoques - Movimento mercadoria (MIGO) - Saída de mercadorias (MIGO_GI) - Saída de mercadorias (MB1A) Uma saída de mercadoria (SM) é a retirada de material do estoque, seja para consumo ou expedição para um cliente. Tipo de movimento - 201 – Consumo de mercadoria para centro de custos vindo do depósito - 221 – Consumo de mercadoria para projeto vindo do depósito - 261 – Consumo para ordem vindo do depósito - 281 – Consumo para diagrama de rede vindo do depósito - 541 – Subcontratação: remessa dos componentes de livre utilizável para fornecedor - 551 – Retirada para sucata de livre utilizável As opções da transação MIGO_GI são: Saída e Estorno. Campos a serem preenchidos para Saída de Mercadoria: - Selecionar “Saída de mercadorias” - Entrar com os dados dos itens a serem retirados do depósito: o Material o Quantidade o Centro o Depósito o Centro de Custo (obrigatório dependendo do tipo de saída) Campos...

sap_basis (Monitoramento do SAP Basis)

sap_basis (Monitoramento do SAP Basis) O probe sap_basis (SAP Basis Monitoring - Monitoramento do SAP Basis) monitora a integridade e o desempenho do cenário SAP. Este probe ajuda as empresas a monitorarem seus aplicativos SAP críticos à missão. O probe sap_basis pode monitorar as instâncias do SAP, as instâncias de banco de dados e sistemas de arquivos, que são os principais componentes de uma implantação do SAP Basis. Consulte Métricas do sap_basis para compreender os recursos de monitoramento do probe. O probe permite que os administradores do Basis tenham uma visão holística do ambiente SAP Basis e os ajuda a detectar problemas antes que eles afetem os usuários finais. Com esse probe, a equipe do Basis pode monitorar o desempenho de seus aplicativos em um único console, ver os alertas assim que as ocorrências surgem, diagnosticar e solucionar os problemas, acompanhar as tendências e planejar usando os gráficos no USM (Unified...

Execução de Jobs em segundo plano no SAP

As tarefas em segundo plano no sistema SAP são executadas em segundo plano sem afetar as operações normais no sistema.  Esses trabalhos são usados ​​para reduzir o esforço manual e automatizar o processo.  Eles podem ser executados em segundo plano sem qualquer entrada do usuário e podem ser programadas para serem executadas quando o carregamento do sistema estiver baixo. Jobs em segundo plano podem ser divididos em três categorias - Classe A (alta prioridade) Isso é usado para tarefas urgentes ou críticas e deve ser agendado como Jobs prioritário de classe A.  O Job de Classe A reserva um ou mais processos de trabalho em segundo plano. Classe B (Prioridade Média) Esses Jobs são executados após a conclusão de trabalhos de alta prioridade da Classe A. Classe C (baixa prioridade) Os Jobs nessa categoria são executados depois que as tarefas de classe A e de classe B são concluídas.