[英]JPA : Re-use Id generated from a sequence for a new version of the same object having composite PK (ID + VERSION)
[英]Composite PK null id generated
春季靴:2.0.2
休眠核心:5.2.17
的方言:SQLServer2012Dialect
尝试使用JpaRepository save()方法保存DistributionActivities实体时,操作失败,并显示以下消息:
org.hibernate.id.IdentifierGenerationException:为以下类生成空ID:类DistributionActivitiesEmails
上级实体:
@Entity
@Table(name = "DistributionActivities")
public class DistributionActivities implements Serializable
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name ="ActivityID")
private Long activityID;
@OneToMany(cascade={CascadeType.ALL})
@Fetch(FetchMode.JOIN)
@JoinColumn(name="activityID", referencedColumnName="activityID")
private Set<DistributionActivitiesEmails> distributionActivitiesEmails;
}
子实体:
@Entity
@Table(name = "DistributionActivitiesEmails ")
public class DistributionActivitiesEmails implements Serializable
{
@EmbeddedId
private DistributionActivitiesEmailsId id;
@Length(max = 50)
private String EmailAdress;
}
复合PK:
@Embeddable
public class DistributionActivitiesEmailsId implements Serializable
{
@ManyToOne
@JoinColumn(name="ActivityID")
private DistributionActivities distributionActivities;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name ="ActivityEmailID")
private Long activityEmailID;
}
根据@EmbeddedId javadoc,不支持在嵌入式id类中定义的关系映射。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.