Questão de Programação — Plataforma Java — FUNDATEC 2025
Programação›Plataforma Java
Código
qg474926
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2025
Nível
Superior
Cargo
Analista em Computação / Ênfase em Programação de Sistemas na Tecnologia JAVA
No JPA (Java Persistence API), as classes que representam tabelas em um banco de dados são normalmente chamadas de classes DAO (Data Access Object). Na linguagem Java, qual anotação faz com que o JPA identifique que determinada classe deve ser manipulada por ele para manipular dados de uma tabela?
A@Dao
B@Entity
C@Hibernate
D@Persistence
E@Table
Revelar gabarito e comentário▾
GabaritoB — @Entity
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 – Anotação @Entity
Gabarito: letra B. A anotação @Entity é a que identifica uma classe como entidade gerenciada pelo JPA, correspondendo a uma tabela no banco de dados. É a anotação principal para mapeamento objeto-relacional no padrão JPA.
A questão tenta confundir ao mencionar "classes DAO", mas DAO (Data Access Object) é um padrão de projeto, não uma anotação JPA. Já @Table especifica detalhes da tabela, mas a classe precisa primeiro ser anotada com @Entity para que o JPA a reconheça.
NÃO CAIA NESSA!
A questão fala em "classes DAO" para levar você a marcar @Dao, mas essa anotação não existe no JPA. A anotação correta é @Entity. @Table é complementar e não é suficiente para que o JPA gerencie a classe.
Alternativa A — ❌ Incorreta
@Dao não é uma anotação padrão do JPA. DAO é um padrão de projeto para acesso a dados, não uma anotação. A confusão vem do enunciado que cita "classes DAO".
Alternativa B — ✅ Correta ⟵ GABARITO
@Entity é a anotação que torna uma classe uma entidade JPA, vinculando-a a uma tabela do banco de dados. É obrigatória para que o JPA possa gerenciar a persistência da classe.
Alternativa C — ❌ Incorreta
@Hibernate é uma anotação específica do framework Hibernate, não do JPA padrão. Embora Hibernate seja uma implementação de JPA, a anotação padrão do JPA é @Entity.
Alternativa D — ❌ Incorreta
@Persistence é uma anotação usada em contexto de injeção de dependência (ex.: @PersistenceContext) para injetar um EntityManager, mas não para marcar uma classe como entidade.
Alternativa E — ❌ Incorreta
@Table é usada para definir o nome da tabela ou esquema, mas não é a anotação que faz o JPA identificar a classe como entidade. A classe precisa primeiro ter @Entity; sem ela, @Table é ignorada.
Resumo: Apenas @Entity cumpre o papel descrito. Memorize: para toda classe entidade, usa-se @Entity; @Table é opcional para customização.