1

我有以下代码:

Criteria criteria = currentSession.createCriteria(Activity.class);
criteria.add(Restrictions.eq("activityId", activityId));

List<Activity> existingActivities = criteria.list();

if(existingActivities.size() == 0){
    System.out.println("No Activity exist for activity id: "+activityId);
    continue;
}

    Activity activity = existingActivities.get(0);

    User assignTo = users.get(UNKNOWN);

    activity.setUser(assignTo);
    currentSession.flush();

我期待hibernate会发出一条更新语句,并用新用户保存我的持久对象活动。但它没有用。我正在使用带有 Spring 的 Hibernate。方法被标记为@Transactional。我以为我不必放置 session.flush()。所以我也尝试过。它没有用。如果我在这里做错了什么,请指导我。

我也尝试过明确调用更新。我可以在 SQL 日志中看到更新语句,但它没有更新我的数据库。

谢谢,帕万

4

0 回答 0