假设我有实体:用户,组和通知。
//User has field List<Group> groups and List<Notification> myNotifications.
public class User {
private List<Group> groups;
private List<Notification> myNotifications;
}
//Group has field List<Notification> notifications.
public class Group {
private List<Notification> notifications;
}
现在,当用户创建他的帐户时,我将用户实体保存到具有空组列表的数据库中。 然后,当用户创建或将要添加到组时,他想要向其添加一些通知。
当我创建并保存通知时,我希望将其保存到某些组通知列表和某些用户(通知创建者)通知列表中。 我不想要将我的通知保存到一个或另一个列表的情况。我需要确保通知将同时保存到:用户通知列表实体和组通知列表。
我应该怎么做以避免不一致?
现在,我的服务方法被注释为@Transactional(spring transaction),据说它提供了一致性。但我想知道这是否足够?
提前致谢