我正在尝试在Spring数据中使用@Embeddable
和@Embedded
。以下是我的方法。
DeviceEntity:
@Entity
@Table(name = "device")
public class DeviceEntity implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
@AttributeOverrides({@AttributeOverride(name = "id" , column= @Column(name = "id",nullable = false))})
private DeviceIdType deviceIdType;
.
DeviceIdType:
@Embeddable
public class DeviceIdType implements Serializable {
private static final long serialVersionUID = 1L;
@Column(name = "id")
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
。 。
错误消息:
"code": "4715",
"message": "Something went wrong",
"additionalInfo": "null id generated for:class com.b.DeviceEntity; nested exception is org.hibernate.id.IdentifierGenerationException: null id generated for:class com.b.DeviceEntity"
现在,当我使用GenertionType策略时,我得到了这个例外。
因此,我的问题是:如何在使用@Embeddable和@Embedded时设置GenerationType策略?
答案 0 :(得分:2)
.twitter-widget {
display: inline-block;
vertical-align: top;
padding: 2px;
position: relative;
}
和@Embeddable
用于JPA / Spring Data中的复合主键。
如果您使用简单生成的主键,则最好使用@EmbeddedId
@Id
注释