Вы можете объявить произвольное ограничение, используя атрибут columnDefinition
:
@Column(name="container_guid",
columnDefinition = "VARCHAR(255) REFERENCES container(guid)")
private String containerGuid;
Обратите внимание, однако, что Hibernate ничего не знает об этом ограничении, так что, например, он может не выполнять вставки вправильный порядок в отношении этого и т. д.
Поэтому было бы лучше создать отношение @ManyToOne
.Если вы боитесь дополнительного SQL-запроса для Container
, необходимого для установки этого свойства, вы можете использовать Session.load()
/ EntityManager.getReference()
, чтобы получить прокси-сервер без выдачи актуального запроса.