如何在NetBeans中使用Hibernate从Mysql获取最后一条记录? [英] How to get last record from Mysql using Hibernate in NetBeans?

查看:79
本文介绍了如何在NetBeans中使用Hibernate从Mysql获取最后一条记录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我找到相同的问题如何获取最后一条记录Mysql使用Hibernate?,但我没有解决我的问题。我想使用Hibernate从Mysql获取最后一条记录,这是我的代码



public class CabinetController implements Controller {

  @Override 
public ModelAndView handleRequest(HttpServletRequest hsr,
HttpServletResponse hsr1)抛出Exception {
ModelAndView mv = new ModelAndView(kabinet);
String out =Výpisuživatelů:;
尝试{
Session session = HibernateUtil.getSessionFactory()。getCurrentSession();
session.beginTransaction();
List result = session.createQuery(from Kabinet ORDER BY id desc LIMIT 1)。list();
mv.addObject(kor,result);
session.getTransaction()。commit();
} catch(Exception e){
e.printStackTrace();
}
mv.addObject(message,out);
return mv;
}

resault是所有记录的全表,但我只需要最后一条记录?



请帮助我,这对我来说非常重要!!!

解决方案

限制在HQL(Hibernate v3 +)中不起作用。



您应该使用MaxResults。



与列表:

 列表< Kabinet> result = session.createQuery(from Kabinet ORDER BY id DESC)
.setMaxResults(1)
.list();

没有清单的例子:

<$ p $ Kabinet result =(Kabinet)session.createQuery(from Kabinet ORDER BY id DESC)
.setMaxResults(1)
.uniqueResult();


I find the same question How to get last record from Mysql using Hibernate? but i dont solved my problem. I want to get last record from Mysql using Hibernate, this is my code

public class CabinetController implements Controller {

@Override
public ModelAndView handleRequest(HttpServletRequest hsr,
                                  HttpServletResponse hsr1) throws Exception {
    ModelAndView mv = new ModelAndView("kabinet");
    String out = "Výpis uživatelů: ";
    try {
        Session session = HibernateUtil.getSessionFactory().getCurrentSession();
        session.beginTransaction();
     List result = session.createQuery("from Kabinet ORDER BY id  desc LIMIT 1").list();
        mv.addObject("kor", result);
        session.getTransaction().commit();
    } catch (Exception e) {
        e.printStackTrace();
    }
    mv.addObject("message", out);
    return mv;
}

resault is full table whith all records, but I want just 1 last record?

Please help me, it is very important for me!!!

解决方案

Limit does not work in HQL (Hibernate v3+).

You should use MaxResults.

Example with list:

List<Kabinet> result = session.createQuery("from Kabinet ORDER BY id DESC")
                          .setMaxResults(1)
                          .list();

Example with no list:

Kabinet result = (Kabinet) session.createQuery("from Kabinet ORDER BY id DESC")
                              .setMaxResults(1)
                              .uniqueResult();

这篇关于如何在NetBeans中使用Hibernate从Mysql获取最后一条记录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆