#java #many-to-many #ejb-3.0
#java #многие ко многим #ejb-3.0
Вопрос:
Интересно, возможно ли это вообще. Я не нашел никаких примеров того, как это сделать.
Мой основной объект является владельцем регистрации. У владельца регистрации может быть много интересов, и интерес может быть назначен многим владельцам регистрации. Классическая ситуация «многие ко многим».
Он моделируется в моей базе данных с помощью классической таблицы соединений (она содержит уникальный идентификатор, но в остальном просто reg_id и interest_id). Это работает великолепно.
Я только что определил это для владельца регистрации:
@JoinTable(name = "registrant_interest", joinColumns = {
@JoinColumn(name = "registrant_id", referencedColumnName = "id")},
inverseJoinColumns = {
@JoinColumn(name = "interest_id", referencedColumnName = "id")})
@ManyToMany
private Collection<Interest> interestCollection;
Теперь моя проблема. Когда владелец регистрации входит в систему, он выбирает конференцию. Таким образом, в коллекции должно быть только определенное количество интересов…интересы для выбранной конференции.
Но с выбранным мной подходом я получаю весь интерес от всех конференций, на которые когда-либо регистрировался владелец регистрации.
Возможно ли иметь
‘где conference_id = ?’ со стороны интереса в этой конструкции или я должен вместо этого использовать представление?
с наилучшими пожеланиями и благодарностями за любую помощь
Ким
Комментарии:
1. вы можете просто использовать HQL с вашими конкретными критериями, поделиться кодом, который вы используете для извлечения ваших данных
2. Когда вы хотите передать
where conference_id = ?
фильтр? При загрузке объекта или при выполнении запроса?