你好,我试图用springboot构建一个mysql数据库,对于一个表,我需要一个ID和日期组合在一起的主键。我的目标是通过日期进行版本控制。
@AllArgsConstructor
@Data
@NoArgsConstructor
@Entity
public class Document {
@EmbeddedId
private docKey docKey;
}
是否可以为此嵌入合适的工具?
@Embeddable
public class docKey implements Serializable {
private String uId;
private Date entryDate;
}
答案 0 :(得分:0)
休眠指定@NaturalId
就像一个代理键
如果实体具有由@NaturalId
注释的字段,则可以通过主键和naturalId进行标识
因此,您可以将Id定义为String并将包含ID和Date的可嵌入类定义为@NaturalId
在这种情况下,您将可以按ID,按Date,按ID和日期搜索
以下是@NaturalId
的文档:
https://docs.jboss.org/hibernate/orm/5.0/mappingGuide/en-US/html/ch07.html