Проблема с картированием Onetoone с HibernateJAVA

Программисты JAVA общаются здесь
Anonymous
Проблема с картированием Onetoone с Hibernate

Сообщение Anonymous »

У меня есть эта сущность: < /p>
@Entity
@DiscriminatorValue("10")
@ToString(callSuper = true)
@Getter
@Setter
@NoArgsConstructor
public class ChangePolicy extends AllowedRangeOption {

@Column(name = "ALLOWED_RANGE_OPTION_TYPE", insertable = false, updatable = false)
private AllowedRangeOptionsType type;

@OneToOne
@JoinColumn(name = "INSTANCE_ID", insertable = false, updatable = false)
private FinancialProduct financialProduct;

@OneToOne
@JoinFormula(value = "(case when (ITEM_KEY = 'OfferProdAttr_ObservedPeriodUnit') then key_value_id else null end)")
@JoinColumn(name="instance_id", referencedColumnName = "instance_id", updatable = false, insertable = false)
private KeyValue temp;
}
< /code>
он соединяется с Keyvalue на keyvalue.instance_id = outmentrangeoption.instance_id и
keyvalue.item_key = 'surferprodattr_observedperiodUnit'. Существует проблема, что он не удается: < /p>
org.springframework.orm.jpa.JpaSystemException: More than one row with the given identifier was found: 250627104234518978, for class: cz.kb.pcp.bc.cataloguemanagement.jpa.model.entity.keyvalue.KeyValue
< /code>
может кто -нибудь дать мне совет горячих для решения этой проблемы? Я также пытаюсь использовать < /p>
@OneToOne
@SQLRestriction( "ITEM_KEY = 'OfferProdAttr_ObservedPeriodUnit'")
@JoinColumn(name="instance_id", referencedColumnName = "instance_id", updatable = false, insertable = false)
private KeyValue temp;
< /code>
Но с той же проблемой кажется, что Hibernate игнорирует аннотацию @sqlrestriction < /p>
Я также попробую: < /p>
@OneToOne
@SQLJoinTableRestriction( "ITEM_KEY = 'OfferProdAttr_ObservedPeriodUnit'")
@JoinColumn(name="instance_id", referencedColumnName = "instance_id", updatable = false, insertable = false)
private KeyValue temp;
< /code>
Но с той же проблемой. < /p>
Я также использую: < /p>
@OneToOne
@WhereJoinTable(clause = "ITEM_KEY = 'OfferProdAttr_ObservedPeriodUnit'")
@JoinColumn(name="instance_id", referencedColumnName = "instance_id", updatable = false, insertable = false)
private KeyValue temp;
< /code>
Но все же проблема сохраняется. Спасибо за помощь

Подробнее здесь: https://stackoverflow.com/questions/797 ... -hibernate

Вернуться в «JAVA»