JPA-картографическая проблема - PullRequest
2 голосов
/ 18 января 2011

Reference (http://stackoverflow.com/questions/4688709/problem-in-jpa-mapping)

У меня есть ситуация, когда мои таблицы БД похожи на приведенные ниже, мне интересно, как получить сопоставления JPA для таблиц такого типа, особенно для auction_param_values, у которых нет идентификатора первичного ключа

Имя таблицы: аукцион с первичным ключом, как аукцион_ид.

Имя таблицы: * auction_param * с первичным ключом в качестве аукциона_param_id

Таблица AUCTIO_PARAM используется для хранения подробной информации о параметрах, таких как Start_Date, End_Date и т. Д.

auction_param_id | auction_param_desc 

1                | start date
2                | end_date 

Название таблицы: auction_param_values ​​

Хранит фактические значения этих параметров, связанных с Аукционом.

Таблица выглядит так: -

auction_id | auction_param_id | auction_param value | 

   1       |      2           |      2011-01-15     | 

Как будет выглядеть класс сущности auction_param_values? есть ли указатель на то, как мы можем разработать схему для поддержки JPA (мы используем Eclipselink в качестве поставщика).

Если потребуется, могу предоставить более подробную информацию.

1 Ответ

1 голос
/ 18 января 2011

Ваша схема кажется немного чрезмерно фрагментированной, но, возможно, она более сложна, чем вы показываете.

Ваша модель зависит от вашего дизайна, но вы можете иметь что-то вроде

Auction
@Id
long id;
@OneToMany
List<ParameterValue> parameterValues;

ParameterValue
@Id
@ManyToOne
Auction auction;
@Id
@ManyToOne
Parameter parameter;
@Basic
String value;

Parameter
@Id
long id;
@Basic
String description
@Basic
Date startDate;
@Basic
Date endDate;
...