在 Hibernate 中将自定义对象属性存储为列
Posted
技术标签:
【中文标题】在 Hibernate 中将自定义对象属性存储为列【英文标题】:Store Custom Object Attributes as Columns in Hibernate 【发布时间】:2021-09-21 05:54:11 【问题描述】:我们如何使用自定义对象属性作为表格列生成表格
private class CustomObject
String attr1;
String attr2;
@Entity
@Table(name = "result")
public class Result
@Column
private String id;
@Column
public CustomObject cobject;
RESULT 表生成如下
id | attr1 | attr2 |
---|
【问题讨论】:
您正在寻找@Embedded
。
谢谢@chrylis-cautiouslyoptimistic-
【参考方案1】:
来自Hibernate_User_Guide 文档:
PA 为使用可嵌入类型定义了两个术语:@Embeddable 和@Embedded。 @Embeddable 用于描述映射类型本身 (例如 Publisher)。@Embedded 用于引用给定的可嵌入类型 (例如 book.publisher)。
所以你可以像下面这样注释你的类:
@Embeddable
private class CustomObject
String attr1;
String attr2;
@Entity
@Table(name = "result")
public class Result
@Column
private String id;
@Embedded
public CustomObject cobject;
【讨论】:
谢谢@dariosicily @try_aaam 不客气。以上是关于在 Hibernate 中将自定义对象属性存储为列的主要内容,如果未能解决你的问题,请参考以下文章