Описание технологии: аннотация Hibernate — 3.4.0.GA java 1.5
таблица : users_roles_branches столбцы : user_id, role_id, branch_id
Пользователю назначаются разные роли для разных филиалов компании.
Теперь у меня есть один класс java pojo
public class branch
{
@ManyToMany
@JoinTable(name = "users_roles_branches", joinColumns = { @JoinColumn(name="branch_id") }, inverseJoinColumns = { @JoinColumn(name = "role_id") })
@MapKeyManyToMany(joinColumns = { @JoinColumn(name = "user_id", unique = false) })
public Map<User, Role> getUserRoleMap() {
return userRoleMap;
}
}
Основное требование — получить список ролей, назначенных разным пользователям в ветке.
Столкнувшись с проблемой: поскольку одному пользователю может быть назначено несколько ролей, карта не будет работать для данных сопоставления ролей пользователя.
Одним из решений может быть Map>, но я сомневаюсь, что смогу использовать вложенную коллекцию с спящим режимом.
Пожалуйста, помогите мне!
Если вопрос не понятен или не в представимой форме, пожалуйста, дайте мне знать.