0

次の問題に直面しています: テーブル A への外部キーを持つ 1 つのテーブル A と B があります。エンティティには次のフィールドがあります: A:

public class A{

    @Column(name = "id_adres", nullable = false)
    private Long idAddress;
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    @Column(name = "id_adres", nullable = false)
    private Long idAddress;

Bエンティティにはフィールドがあります(特に):

public class B{
    @Id
    @Column(name = "id")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Long id;

    @Column(name = "id_adres", nullable = false)
    private Long idAddress;
    @Column(name = "id_adres", nullable = false)
    private Long idAddress;

タイプBのフィールドをAエンティティに追加するには? A:

@OneToOne(mappedBy = "idAddress")
private B b

このソリューションは機能しません。エンティティのフィールド B b は、クエリ ステートメントの後に NULL です。

4

1 に答える 1

2

長いことは、次のような long try と同じ例を持っている理由ではありません:

public class UserToken {
    @OneToOne(targetEntity = User.class)
    @JoinColumn(nullable = false, name = "user_id")
    private long tokenId;

}

public class User {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "user_id", unique = true, nullable = false)
    private long userId;

}
于 2019-03-01T12:58:55.040 に答える