【问题标题】:fetch 5 latest rows from db using spring hibernatetemplate使用spring hibernatetemplate从db中获取5个最新行
【发布时间】:2013-06-05 14:43:35
【问题描述】:

我想使用 hibernate-template(Spring orm) 从数据库中获取最新的 5 行。我发现可以为此使用标准。但我不知道如何在标准中指定有限的行数(5)。请帮我解决这个问题。

【问题讨论】:

    标签: hibernate spring-orm


    【解决方案1】:

    您需要使用表的一个属性来识别最新的 5 行,让我们假设一些 'id' 属性,该属性会随着每条新记录的增加而增加。话虽如此,您可以设置排序 asc/desc 然后限制结果。

    例如:

    criteria.addOrder(Order.desc("id"));
    criteria.setMaxResults(5);
    

    更新您可以在场景中使用的属性的标准。​​

    希望对你有帮助!

    【讨论】:

    • 嘿,谢谢您的回复。我正在使用分离标准。似乎“setMaxResults()”方法不适用于分离标准。请提出建议。
    • @Sophiya 是的,你是对的 setMaxResults 不适用于分离的标准。恐怕在这种情况下,唯一的选择是使用 Restrictions.sqlRestriction() 将纯 SQL 表达式添加到 DetachedCriteria。像这样: DetachedCriteria criteria = DetachedCriteria.forClass(YourClass.class) .add(Restrictions.sqlRestriction("LIMIT 1"));
    猜你喜欢
    • 2018-04-14
    • 2014-07-26
    • 2016-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-01
    • 2015-01-31
    相关资源
    最近更新 更多