Pergunta

No SQL é fácil fazer uma junção e retornar apenas as colunas que pretende a partir da tabela associada. Qual é a melhor maneira de mapear isso em JPA / Hibernate?

Por exemplo, não é uma entidade pasta mapeada para o EMAIL_FOLDER e uma entidade mail mapeados para a tabela de EMAIL. Existe uma relação de um-para-muitos de pasta para e-mail. A entidade e-mail é bastante pesado, pois contém CLOBs do texto, anexos, etc. Há alguns casos em que temos de obter toda a e-mail para trás e há outros casos quando apenas queremos trazer de volta SENDERNAME, assunto e sentDate e não querem a sobrecarga de memória de trazer os dados CLOB. Conseguir isso em SQL é simples, mas eu não tenho certeza do que a melhor abordagem seria em JPA / Hibernate.

Estou pensando em criar um LightEmail que apenas mapeia para SENDERNAME, assunto e sentDate. É esta a melhor maneira de lidar com algo assim?

Update:. Neste momento eu gostaria de evitar a instrumentação de código byte, se possível

Foi útil?

Solução

Anotar a propriedade (o CLOB) como @Basic(fetch=FetchType.LAZY)

Declarando propriedade básica mapeamentos na Referência Hibernate

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