1

removeGroupCoordinator()ユーザー名とグループ名の 2 つの引数を取ります。このメソッドは、入力グループから入力ユーザーを削除します。

removeGroupCoordinator(coordinators: Set<Long>, coordinatorIdToRemove: Long, groupId: Long)への最終的な呼び出しを介してグループからコーディネーターを削除するオーバーロードがありcoordinators.remove(coordinatorIdToRemove)ます。

persist()フラッシュを呼び出す前に呼び出す必要がありますか? それ以来flush()、データベースをキャッシュに同期することはないと思います。coordinators.removeCoordinator(...).

public void removeGroupCoordinator(final long followerId, final long followingId)
{
    DomainGroup groupEntity = getDomainGroup();

    Set<Person> groupCoordinators = groupEntity.getCoordinators();

    removeGroupCoordinator(groupCoordinators, followerId, followingId);

    groupEntity.setCoordinators(groupCoordinators);

    // getEntityManager().persist(groupEntity); needed? 

    getEntityManager().flush();
}
4

2 に答える 2

1

を呼び出すことは必須ではありませんpersist()。オブジェクトがすでに Hibernate セッションに関連付けられている場合、そのオブジェクトに対するすべての変更が保存されます。マニュアルから永続オブジェクトの変更

于 2012-12-27T15:53:29.023 に答える