#hibernate #class #mapping #relational-database
#переход в спящий режим #класс #отображение #реляционная база данных
Вопрос:
Я реализую проект Java EE, и в моей части моей диаграммы классов у меня есть класс ассоциации, который связывает два класса samples (на французском Echantillon) и analysis (на французском AnalyseElementaire) (Примечание: проект предназначен для химической лаборатории, см. Изображение ниже)
после того, как я сгенерировал базу данных с помощью POWER AMC (POWER AMC является продуктом Sybase) и использовал инструменты hiberante внутри eclipse для генерации классов модели предметной области, он генерирует два класса для результата: первый — «Result», а второй — ResultId, последний, который управляет идентификатором результата, который является составным идентификатором из идентификаторов двух классов samples и analysis
: я хотел бы знать, необходимо ли создавать класс DAO для ResultID.
Ответ №1:
ResultID — это, я полагаю, класс составного идентификатора объекта результата. Это не объект hibernate, просто идентификатор. Это необходимо, потому что таблица результатов имеет составной первичный ключ, состоящий из идентификатора AnalyseElementaire и идентификатора Echantillon.
Для класса не должно быть никакого DAO, поскольку он не является постоянным.
Безусловно, было бы проще добавить суррогатный первичный ключ в таблицу результатов, чтобы избежать составного идентификатора.