Сложная взаимосвязь дизайна гибернации и базы данных - предложения приветствуются - PullRequest
0 голосов
/ 26 мая 2020

Я много дней ломал голову над проблемой со шляпой, но пока не нашел решения. Приветствуются предложения по решению этой проблемы. Я использую Hibernate, и как только моя модель будет завершена, я создам Java GUI поверх нее.

Краткое изложение сложности, которую я должен реализовать в Hibernate. У меня есть несколько таблиц относительно друг друга.

  • Студент
  • Зачисление
  • Курс

Выглядит довольно обыкновенно, но это не так. Студент <---> Зачисление OneToOne отношение. Зачисление <---> Курс OneToMany. Нет проблем.

  • Каждый курс состоит из двух частей: теоретическая часть и практическая часть, которые являются обязательными для успешного завершения. Теория подразделяется на общую часть и часть курса c.

  • существует два типа курсов: «начальный» и «дополнительный»

  • Если вы записываетесь на один курс типа «начальный», кредит не предоставляется, вы должны пройти все теоретические части плюс практическую часть, чтобы завершить курс.

  • если вы записываете на несколько курсов, кредит будет дан за общую теоретическую часть, хотя вы должны посетить общую теорию только один раз, хотя требуется только конкретная c часть и практика. Вы должны пройти все курсы, чтобы закончить регистрацию.

  • в качестве типа «продление» это еще более сложно. В зависимости от курса, который вы посещали в прошлом, за теоретическую и практическую части будут выдаваться разные баллы.

Требования хранятся в разных таблицах.

Я ищу простое решение для получения требований для каждого курса, которые будут храниться либо в самом курсе, либо на стороне регистрации. Я ценю любые предложения. Спасибо

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