я использую jpa, и информация про еntity получаю через методы интерфейса, поэтому думаю add() remove() не нужны.
двусторонние связи не надо использовать на уровне таблиц и foreign key делать только на стороне дочерней таблицы, как `user_id` в `article` в даном случае
я мало знаком именно со связями в хибернейт.
Можно какой-то простенький пример?
Мапил по примеру.