Вы правы для каждого повторения в цикле, Вы создаете новую переменную. Переменные действительно совместно используют то же имя, но это прекрасно, потому что они не находятся в том же объеме. Следующий пример был бы не работа:
final int myFinalVariable = 0;
for(int i=0;i<5;i++){
myFinalVariable = i;
}
Насколько я знаю, это невозможно сопоставить его таким образом, вам нужно переключиться на One-To-Many и Many-To- Единые отношения , где ваш Б находится посередине. Ваша дата будет атрибутом B.
Из-за этого отсутствия эволюционности документация Hibernate рекомендует избегать использования Many-To-Many в целом и использовать эти два отношения с самого начала.
См.
@ManyToMany Вопрос о гибернации (можно добавить дополнительное поле?)
И
как сделать составной первичный ключ (аннотация сохраняемости java)
с уважением,