hibernate PostgreSQL DAO.java获取单个整数值的方法

vsaztqbk  于 2022-12-27  发布在  PostgreSQL
关注(0)|答案(1)|浏览(95)

这是我正在使用的方法:

public int getId(String proyectName)
    {
      
      int idproyect=0;
      

        
        try
        {
            Session session= hibernateUtil.getSessionFactory().openSession();  
            String hql = "Select idproyect from proyect where name= :proyectName";
             Query query = session
                        .createQuery(hql);
             query.setParameter("proyectName", proyectName);
             idproyect= (Integer)query.uniqueResult();
        }
        catch(Exception e)
        {
        

        }
        return idproyect;
    }

无论变量是否被注入到方法中,我得到的结果都是0,这与idproyect默认值匹配。我检查了日志,正在执行选择,但结果仍然是0。不管怎样,我认为它与查询转换成整数唯一值有关。这个问题已经关注了我2天,但我忽略了,直到今天,因为我需要解决它来继续我的项目。
我不认为这是相关的,但我使用Hibernate来持久化类。

qhhrdooz

qhhrdooz1#

你试着用这个方法得到一个整型值

String hql = "Select idproyect from proyect where name= :proyectName";
  Query query2 = entitymanager.createNativeQuery(hql).setParameter("proyectName", proyectName);
    BigInteger obj = (BigInteger) query2.getSingleResult();
    System.out.println("%%%%%%%" + obj);
    System.out.println(obj);
    long id = Long.valueOf(obj.toString()));
    System.out.println(id);

相关问题