Sobes.tech
Junior — Middle

O que se entende por estado persistente numa entidade no Hibernate, e como isso afeta a sua gestão no contexto do ORM?

sobes.tech IA

Resposta da IA

No Hibernate, o estado "persistent" (permanente) de uma entidade significa que o objeto está ligado à sessão atual e é monitorado pelo ORM. Nesse estado, quaisquer alterações no objeto são automaticamente sincronizadas com o banco de dados ao fazer commit ou ao chamar flush.

Características do estado persistent:

  • O objeto possui um identificador (ID) que corresponde a um registro na base de dados.
  • As alterações no objeto refletem-se na base sem a necessidade de chamar explicitamente métodos de salvamento.
  • O objeto é gerido pela sessão do Hibernate, permitindo trabalhar eficientemente com cache e transações.

Exemplo: se você carregou uma entidade do banco através da sessão, ela torna-se persistent. Ao modificar os campos do objeto, não é necessário chamar explicitamente update — o Hibernate atualizará a entrada ao salvar a transação.