Questão de Programação — Plataforma Java — FCC 2025
Programação›Plataforma Java
Código
fc074045
Banca
FCC
Órgão
TRF - 4ª REGIÃO
Ano
2025
Nível
Superior
Cargo
Analista Judiciário - Área Apoio Especializado - Especialidade: Análise de Sistemas de Informação
O JPA é uma especificação da plataforma Java que define um padrão para mapeamento objeto-relacional (ORM) e gerenciamento de persistência de dados. No JPA, a forma padrão de realizar o mapeamento de objetos Java (POJOs) para tabelas de bancos de dados relacionais é por meio de
Aconfigurações XML como persistence.xml, entity.xml e mapping.xml.
Banotações como @Entity, @Id, @Table e @Column.
Cinterfaces como EntityFactory, QueryBuilder e PersistenceUnit.
Dclasses como HibernateSession, EntityManagerFactory e DataMapper.
Eanotações como @Database, @Primary, @Relation e @Field.
Revelar gabarito e comentário▾
GabaritoB — anotações como @Entity, @Id, @Table e @Column.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
JPA – Mapeamento Objeto-Relacional
Gabarito: letra B. O JPA utiliza anotações padrão em classes Java para realizar o mapeamento objeto-relacional (ORM). As anotações @Entity, @Id, @Table e @Column são as principais para definir entidades, chaves, tabelas e colunas, respectivamente.
A questão cobra o conhecimento do mecanismo padrão do JPA para ORM. É essencial saber que o JPA define um conjunto de anotações (e alternativamente XML) para mapear POJOs a tabelas, mas as anotações são a forma mais comum e direta.
Alternativa A — ❌ Incorreta
Arquivos XML como persistence.xml são usados para configurar a unidade de persistência, mas não para o mapeamento de objetos a tabelas. O mapeamento pode ser feito via XML (arquivos orm.xml), mas a alternativa menciona entity.xml e mapping.xml que não são nomes padrão. A questão pede a forma padrão, que é com anotações.
Alternativa B — ✅ Correta ⟵ GABARITO
Exatamente: @Entity marca a classe como entidade, @Id define a chave primária, @Table especifica a tabela e @Column mapeia atributos a colunas. Essas anotações fazem parte do pacote javax.persistence (ou jakarta.persistence).
Alternativa C — ❌ Incorreta
Interfaces como EntityFactory, QueryBuilder e PersistenceUnit não existem no JPA. Os equivalentes reais são EntityManagerFactory, TypedQuery e Persistence (classe). Mapeamento não é feito por interfaces, e sim por anotações ou XML.
Alternativa D — ❌ Incorreta
HibernateSession é uma classe específica do Hibernate, não do JPA (embora Hibernate seja uma implementação, o JPA define sua própria interface EntityManager). EntityManagerFactory existe no JPA, mas não é usado para mapeamento. DataMapper não faz parte do JPA. A alternativa mistura conceitos de implementações com a especificação.
Alternativa E — ❌ Incorreta
Anotações como @Database, @Primary, @Relation e @Field não fazem parte do JPA. A banca tentou confundir com nomes similares. As corretas são @Entity, @Id, @ManyToOne etc. – mas a alternativa troca os nomes.
NÃO CAIA NESSA!
A alternativa E lista anotações que parecem relacionadas a banco de dados, mas não são as do JPA. O candidato pode confundir com anotações de outras tecnologias (ex.: @Primary do Spring Data? ) ou inventar. Decore as anotações padrão do JPA: @Entity, @Id, @Table, @Column, @GeneratedValue, etc.