【问题标题】:Hibernate get entity by non-primary key and update it + Spring mvcHibernate通过非主键获取实体并更新它+ Spring mvc
【发布时间】:2014-11-21 16:26:49
【问题描述】:

当我使用它的 id 检索一个对象并更改它的属性并更新它时,一切正常,但是当我使用它们的名称 + 版本获取我的对象并更新它们时,没有任何更改保存在数据库中。能不能请人告诉我是什么问题?!

// 通过id获取

public PdfDocument get(Long id) {
    return (PdfDocument) session().get(PdfDocument.class, id);
}

// 按名称+版本获取

public PdfDocument get(String name, int version) {
    Criteria criteria = session().createCriteria(PdfDocument.class);
    criteria.add(Restrictions.eq("name", name));
    criteria.add(Restrictions.eq("version", version));
    return ((PdfDocument) criteria.uniqueResult()) ;
}

//更新

public void update(PdfDocument PdfDocument) {
    session().saveOrUpdate(PdfDocument);
}

【问题讨论】:

  • get(name, version) 方法是否返回了 PdfDocument object 或 null?

标签: java spring hibernate


【解决方案1】:

可能是返回与您预期不同的实体的条件。检查返回实体的 id 和预期的实体。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-20
    • 2018-01-11
    • 2019-02-06
    • 2020-03-10
    • 1970-01-01
    • 2017-08-16
    相关资源
    最近更新 更多