JPA实体一致性 - 如何处理它?

时间:2015-07-03 16:57:55

标签: spring jpa transactions entity consistency

假设我有实体:用户,组和通知。

//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),据说它提供了一致性。但我想知道这是否足够?

提前致谢

0 个答案:

没有答案