FC ConcursosFC Concursos

Questão FC373649

Considere o método abaixo, presente em uma aplicação que utiliza Hibernate 4.3 original, executado em condições ideais. private void createAndStoreEvent(Processo p) { Session sessi

Frameworks para Desenvolvimento

FCC · 2022

Considere o método abaixo, presente em uma aplicação que utiliza Hibernate 4.3 original, executado em condições ideais.

 

private void createAndStoreEvent(Processo p) {

     Session session = HibernateUtil.getSessionFactory().getCurrentSession();

     session.beginTransaction();

     I  ;

     session.getTransaction().commit();

}

 

Para salvar o objeto p na tabela do banco de dados utiliza-se, na lacuna I, a instrução

  1. session.save(p)
  2. session.deploy(p)
  3. session.add(p)
  4. session.persite(p)
  5. session.send(p)
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

session.save(p) é a chamada apropriada para persistir o objeto p usando a API do Hibernate. Esse método converte a instância do estado transient para persistent na Session.

Ao invocar save dentro da transação (após beginTransaction()), o Hibernate registra a entidade para inserção; o comando SQL de INSERT ocorre no momento do flush/commit, quando a sessão sincroniza o contexto com o banco.

Além disso, save pode retornar o identificador gerado (tipo Serializable), garantindo que a entidade passe a ter sua chave primária imediatamente disponível na sessão.

Em resumo: em Hibernate 4.3, dentro de uma transação ativa, session.save(p) é a forma correta e direta de solicitar a gravação de p no banco.

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

Continue aprendendo