Hibernate как сопоставить набор для объекта, где у меня есть два ключа - PullRequest
0 голосов
/ 11 апреля 2011

У меня есть две сущности A, B, где A - одно, а B - много.

A:

  @Entity
  @Table(name = "A") 
   class A...{
    @Id
@Column(name = "A2id",nullable = false)
private Integer A2id;

    @Id
@Column(name = "A1id",nullable = false)
private Integer A1id;

    @OneToMany(mappedBy="a")
private Set<B> Bset;

   //get's set's and public c'tor

}

B выглядит так

@Entity
@Table(name = "B")
public class B implements Serializable{

//id's
@Id
@Column(name = "B1id", nullable = false)
private Integer B1id;
@Id
@Column(name = "B2id",nullable = false)
private Integer B2id;

@ManyToOne
@JoinColumn(name="B2id",nullable = false)
private A a;

//get's set's and public c'tor
 }

и на меня кричит спящий:

A Ссылочный номер внешнего ключа com. .A от com. .B имеет неправильный номер столбца.должно быть 2

что там не так?пожалуйста, помогите мне

1 Ответ

0 голосов
/ 11 апреля 2011

Я узнал, как решить эту проблему:

используя:

@ManyToOne
@JoinColumns( {
    @JoinColumn(name = "a1",  unique = false, nullable = false, insertable = false, updatable = false),
    @JoinColumn(name = "a2",  unique = false, nullable = false, insertable = false, updatable = false) })
private A a;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...