Hibernate 使用@JoinColumnsOrFormulas加载OneToMany映射
以下是我希望在其上创建联接的两个实体:Hibernate 使用@JoinColumnsOrFormulas加载OneToMany映射,hibernate,multi-tenant,Hibernate,Multi Tenant,以下是我希望在其上创建联接的两个实体: public class CustomFieldValue { private Integer id; private Integer identifier; private String entityName; private String name; private String value; public CustomFieldValue()
public class CustomFieldValue {
private Integer id;
private Integer identifier;
private String entityName;
private String name;
private String value;
public CustomFieldValue() {
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", unique = true, nullable = false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name = "identifier", nullable = false)
public Integer getIdentifier() {
return identifier;
}
public void setIdentifier(Integer identifier) {
this.identifier = identifier;
}
@Column(name = "entity_name", nullable = false)
public String getEntityName() {
return entityName;
}
public void setEntityName(String entity) {
this.entityName = entity;
}
@Column(name = "name")
public String getName() {
return value1;
}
public void setName(String name) {
this.name = name;
}
@Column(name = "value")
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
class Order
{
int id;
...
Set<CustomFieldValue> customFieldValues;
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "id", unique = true, nullable = false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
public void setCustomFieldValues(Set<CustomFieldValue> customFieldValues) {
this.customFieldValues = customFieldValues;
}
@OneToMany(fetch = FetchType.EAGER)
@JoinColumnsOrFormulas({
@JoinColumnOrFormula(column = @JoinColumn(name = "identifier", referencedColumnName = "id", insertable = false, updatable = false)),
@JoinColumnOrFormula(formula = @JoinFormula(value = "entityName='Order'")) })
public Set<CustomFieldValue> getCustomFieldValues() {
return customFieldValues;
}
}
它说“找不到实体顺序中的逻辑名称”,@JoinFormula注释中唯一存在的其他属性是referencedColumnName,我无法提供它
有什么办法可以做到这一点吗
@JoinColumnOrFormula(formula = @JoinFormula(value = "entityName='Order'"))