Hibernate返回整数值


问题内容

我是新来的Hibernate。我想传递2列值,并希望hibernate返回该表的主键。

String queryString = "select perId from Permission where document.docId=1 and user.id=2";
return getHibernateTemplate().find(queryString);

但是此方法返回List。我如何返回int值。


问题答案:

在查询中使用uniqueResult()方法。请参阅此处的示例或在此处阅读api

这是一个例子。根据需要更换占位符以使用它们。

    sessionFactory = getHibernateTemplate().getSessionFactory();
    Session session = sessionFactory.getCurrentSession();
    Query query = session
            .createQuery("select value from table where ...");
    query.setParameters("param1", value1);
    result = (Type) query.uniqueResult();