私はクラスを持っているので、別のマッピングされたエンティティからただ1つの列が必要です。私は完全な参照を持つことを無効にすることを好むだろう。これを行う方法はありますか?私は徹底的にグーグルで語ったが、私はその用語を正しいものにしてはならない。Hibernate - エンティティ全体ではなく単一の列に結合する
を説明:
@Entity
@Table(name = "bar")
@Data
public class Bar{
@Id
@Column(name = "itemid")
private long id;
@Column(name = "other_name")
private String otherName;
@OneToOne
@PrimaryKeyJoinColumn
private Foo foo;
}
しかし、私が欲しい:
@Entity
@Table(name = "foo")
@Data
public class Foo {
@Id
@Column(name = "itemid")
private long id;
@Column(name = "name")
private String name;
}
この作品
@Entity
@Table(name = "bar")
@Data
public class Bar{
@Id
@Column(name = "itemid")
private long id;
@Column(name = "other_name")
private String otherName;
@OneToOne
@JoinColumn(name = "itemid")
@Formula("SELECT name FROM FOO v where v.id = id")
// Something here...not sure what. Where name is the name from Foo
private String name;
}
'@ OneToOne'と' @ JoinColumn'を使わずに最後のスニペットを試しましたか? '@ Formula'だけ? – corsiKa