Birleşik JPA veya JPA + Hazırda bekletme uzantılarında bileşik anahtarın bir bileşen olduğu bir bileşik anahtar bildirmesi mümkün mü?JPA Bileşik Anahtar + Sıra
Bu benim kompozit sınıftır:
@Embeddable
public class IntegrationEJBPk implements Serializable {
//...
@ManyToOne(cascade = {}, fetch = FetchType.EAGER)
@JoinColumn(name = "APPLICATION")
public ApplicationEJB getApplication() {
return application;
}
@Column(name = "ENTITY", unique = false, nullable = false, insertable = true, updatable = true)
public String getEntity() {
return entity;
}
@GeneratedValue(strategy = GenerationType.AUTO, generator = "INTEGRATION_ID_GEN")
@SequenceGenerator(name = "INTEGRATION_ID_GEN", sequenceName = "OMP_INTEGRATION_CANONICAL_SEQ")
@Column(name = "CANONICAL_ID", unique = false, nullable = false, insertable = true, updatable = true)
public String getCanonicalId() {
return canonicalId;
}
@Column(name = "NATIVE_ID", unique = false, nullable = false, insertable = true, updatable = true)
public String getNativeId() {
return nativeId;
}
@Column(name = "NATIVE_KEY", unique = false, nullable = false, insertable = true, updatable = true)
public String getNativeKey() {
return nativeKey;
}
//...
}
Zaten application
, entity
, nativeId
ve nativeKey
değerlerini sağlamak. Ben aşağıdaki gibi bir varlık inşa etmek istiyorum:
IntegrationEJB i1 = new IntegrationEJB();
i1.setIntegrationId(new IntegrationEJBPk());
i1.getIntegrationId().setApplication(app1);
i1.getIntegrationId().setEntity("Entity");
i1.getIntegrationId().setNativeId("Nid");
i1.getIntegrationId().setNativeKey("NK");
Ve) em.persist(i1
çağırdığınızda, ben canonicalId
oluşturulur ve entegrasyon takıldığını istiyorum.
Bu mümkün mü? Eğer öyleyse, basit yol nedir? (Uygulama tarafından sağlanan anahtarları veya yerel sql kullanmayı tercih etmiyorum). Böyle
Bu mümkündür. Bulduğum tek yol, Kimlik bölümlerinin takılabilir veya güncellenemez olmasını gerektiriyor. Güncel olmayan yayını açıklığa kavuşturmak istedim, çünkü bu, arama sonuçlarında en üst sırada yer aldı. – Valchris
Bileşen birincil anahtarlar için @ @ GeneratedValue 'açıklaması [desteklenmez] (http://www.objectdb.com/api/java/jpa/GeneratedValue). –
Merhaba, şu anda destekleniyor görünüyor: https://hibernate.onjira.com/browse/HHH-4552 – Eugen