Dúvida de mapeamento com imagem, usando JPA!

Olá galera,

estou desenvolvendo um sistema que vai envolver o armazenamento de imagens no banco de dados (PostgreSQL).

Então em vez de criar o campo Blob direto na entidade Documento, resolvi criar uma outra tabela, que vai receber esse campo Blob e a chave primária da tabela original(Documento).

Então minha dúvida é se o mapeamento está certo ou não. Levando em consideração que 1 documento tem 1 imagem, e que essa imagem pertence a 1 documento.

Segue o mapeamento

Class Documento

@Entity
public class Documento {

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int codigo;

    @OneToOne(mappedBy="documento", cascade=CascadeType.ALL)
    @JoinColumn(name="imagem")
    private DocumentoImagem documentoImagem;

}

Class DocumentoImagem

@Entity
public class DocumentoImagem {

    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private int codigo; //chave primária de Documento
    
    @Lob
    private byte[] conteudo;

    @OneToOne
    @JoinColumn(name="imagem")
    private Documento documento;

}

Agradeço quem puder tirar essa dúvida!