Опять с JPA не имеет смысла - PullRequest
       9

Опять с JPA не имеет смысла

0 голосов
/ 03 октября 2008

Я спросил это ранее и получил указание посмотреть на карту.

У меня есть 2 таблицы: s_id (ключ) имя cli тип

B sa_id(key) s_id user pwd.

Так что в Jpa у меня есть:

@Entity class A...{
@OneToMany(fetch=FetchType.EAGER)
@JoinTable( name="A_B",
joinColumns={@JoinColumn(name="a_id",
table="a",unique=false)},
inverseJoinColumns={@JoinColumn(name="b_id",
table="b", unique=true)} ) Collection
getB(){...} }

класс b - это просто базовый класс сущности без ссылки на A.

Надеюсь, это понятно. Мой вопрос это: Мне действительно нужен стол для соединения сделать такое простое соединение? Не может ли это быть сделано с простым joincolumn или что-то?

Так что теперь, если Иметь это, но jpa пытается написать запрос с новым столбцом, который не существует (s_s_id)

@Entity
class A{
...
@OneToMany(fetch=FetchType.EAGER, mappedBy="s")
Collection<B> x;
}

@Entity
class B{
@ManyToOne
A s;
}

With these tables:
A 
s_id(key) name cli type

B
sa_id(key) s_id(the keys from A) user pwd.

Как я могу сделать объединения OneToMany и ManyToOne так, чтобы мне не нужен ни новый столбец, ни новая таблица? Пожалуйста, дайте мне пример. Проблема заключается в отсутствии внешнего ключа в таблице B?

Если я пропущу карту, я получу Unknown column 't1.S_S_ID' in 'field list'

Если я вставлю в карту, я получу Unknown column 'S_S_ID' in 'field list'

1 Ответ

1 голос
/ 03 октября 2008

Я нашел это, мне нужно добавить @JoinColumn и дать ему имя ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...