Pergunta

Dentro de uma classe de entidade, posso ter qualquer objeto como um atributo e quando persistir a entidade ao banco de dados, também persistirá que os atributos de objetos?

Foi útil?

Solução

Se o objeto for serializável, você poderá serializá-lo como um blob.Mas isso não é algo que você quer fazer porque

  • seria ineficiente constantemente serializar e desserializar o objeto
  • seria muito frágil: uma mudança na classe de objeto tornaria impossível (ou difícil se você souber o que você está fazendo) para ler versões anteriores já salvas no banco de dados
  • apenas Java poderia dar sentido ao blob
  • Você não pôde fazer qualquer consulta neste objeto

Então, basicamente, a resposta é não.As entidades JPA podem ter objetos incorporados, cujos campos são mapeados para colunas, ou podem ter associações com outras entidades (Onetoone, Onetomany, ManytoOne ou ManyTomany).

Meu conselho: pense no design do seu banco de dados primeiro, depois mapear o esquema para entidades JPA.Se você começar a escrever um modelo de objeto sem pensar como ele será persistido no banco de dados, você não vai muito longe.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top