FC ConcursosFC Concursos

Questão FC373713

Em uma aplicação Jakarta EE, criada e configurada em condições ideais, uma Técnica deseja injetar um EntityManager, que é uma parte essencial da API JPA, em uma classe Enterprise J

Servidores de Aplicação

FCC · 2023

Em uma aplicação Jakarta EE, criada e configurada em condições ideais, uma Técnica deseja injetar um EntityManager, que é uma parte essencial da API JPA, em uma classe Enterprise JavaBean (EJB), imediatamente antes da instrução private EntityManager entityManager;. Para isso, ela terá que utilizar a anotação

  1. @PersistenceContext
  2. @Injection
  3. @EJBInject
  4. @InjectTransaction
  5. @EntityInject
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

A anotação @PersistenceContext informa ao contêiner Jakarta EE que deve ser injetado um EntityManager gerenciado por contêiner na classe (por exemplo, um EJB), permitindo operações JPA sem criar manualmente a fábrica.

Por padrão ela associa um contexto de persistência com escopo de transação, ou seja, o contexto existe durante a transação ativa; ao confirmar a transação as alterações são sincronizadas com o banco.

É possível ajustar comportamentos com atributos como unitName (nome da unidade de persistência) e PersistenceContextType, escolhendo entre TRANSACTION (padrão) e EXTENDED (útil em beans stateful para manter o contexto além de uma única transação).

Exemplo típico: @PersistenceContext private EntityManager entityManager; — o contêiner injeta e gerencia o ciclo de vida do EntityManager, simplificando o acesso à camada de persistência.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo