Alternativa A - EntityManager
Explicação Didática
A questão aborda conceitos fundamentais da JPA (Java Persistence API), que é a especificação padrão do Java para o gerenciamento de dados relacionais através do mapeamento objeto-relacional (ORM).
Para entender a resposta correta, é necessário diferenciar os papéis dos principais componentes listados:
- EntityManager: É a classe central e mais utilizada na JPA. Ela atua como a ponte entre a aplicação e o contexto de persistência. Suas responsabilidades incluem criar, consultar, atualizar e remover (CRUD) as entidades persistentes. Portanto, ela é diretamente responsável pelo "manuseio" das entidades.
- EntityManagerFactory: É uma fábrica cara para ser criada. Sua função é instanciar os
EntityManager. Embora seja essencial para configurar o JPA, ela não executa as operações nas entidades diretamente. - Transaction: Refere-se ao gerenciamento de transações (
EntityTransaction). Garante a integridade dos dados (ACID), mas não realiza o CRUD das entidades por si só. - Entity: São as classes Java (POJOs) anotadas com
@Entity que representam os dados no banco. Elas são o objeto sendo manipulado, não o componente que faz a manipulação. - Column: Geralmente associado à anotação
@Column, define o mapeamento de um campo da entidade para uma coluna específica no banco de dados.
Resumo da Lógica
| Componente | Função Principal |
|---|
| EntityManager | Gerencia o ciclo de vida das entidades (CRUD) |
| EntityManagerFactory | Cria instâncias do EntityManager |
| Transaction | Controla transações de banco de dados |
| Entity | Representação dos dados (classe Java) |
Conclui-se que o componente chave para o manuseio direto das entidades durante a execução da aplicação é o EntityManager.
Alternativa A.