С учетом следующих таблиц:
CREATE TABLE Employees
(
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
birth_date DATE NOT NULL,
PRIMARY KEY (first_name, last_name)
);
CREATE TABLE Managers
(
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
salary INTEGER NOT NULL,
total_bonus INTEGER NULL,
PRIMARY KEY (first_name, last_name),
CONSTRAINT managers_employees_fk FOREIGN KEY (first_name, last_name) REFERENCES Employees (first_name, last_name)
);
CREATE TABLE Workers
(
first_name VARCHAR(50) NOT NULL,
last_name VARCHAR(50) NOT NULL,
wage INTEGER NOT NULL,
PRIMARY KEY (first_name, last_name),
CONSTRAINT workers_employees_fk FOREIGN KEY (first_name, last_name) REFERENCES Employees (first_name, last_name)
);
как бы вы реализовали классы сущностей и составного первичного ключа, используя аннотации JPA 1.0 @IdClass?
Подвопросы возникают:
- Определяют ли подклассы свои собственные классы идентификаторов?
- Если это так, они наследуются от класса ID суперкласса?
- Получают ли подклассы аннотации @IdClass?
Обратите внимание, что вопрос намеренно наивен. Я хотел бы видеть объявления классов, свойств с аннотациями доступа к полям без методов получения и установки, вероятно, будет достаточно.
Спасибо