Я думаю fetchType = LAZY - это то, что вам нужно.Он создает прокси-объект для страны, и он не должен выполнять никаких запросов, запрашивая идентификатор.
@OneToOne(fetch = FetchType.LAZY)
private Country country;
Но вам также нужно пометить ваш идентификатор-получатель в стране.
public class Country extends Model
{
@Id
public Long getId()
{
return id;
}
}
Если вы не хотите менять свои id-аннотации, вы также можете использовать этот обходной путь:
Serializable id = ((HibernateProxy) country).getHibernateLazyInitializer().getIdentifier()