jjzjj

getSingleResult

全部标签

java - getSingleResult 返回 hibernate 中 native 标量查询的代理

我正在努力将我的JPA持久性提供程序从EclipseLink2.3切换到Hibernate3.6.5.Final。问题出在native查询上。注意:这不是EclipseLink的问题。我正在尝试从我没有为其声明实体的表中获取标量值、String。这是代码:Queryq=em.createNativeQuery("selectdescriptionfromfoowherefoo_id=?");q.setParameter(1,fooId);Stringdescription=(String)q.getSingleResult();使用Hibernate我得到一个ClassCastExce

java - JPA native 查询获取单个对象

如何使用JPAnative查询获取单个对象。我做了一些研究,但所有答案都是使用“getSingleResult”,但它没有返回我想要得到的结果。例如,如果我想获取数据库中表的计数并将其提取为整数,我应该怎么做。下面的代码显示了我如何通过使用Sessisonhibernate获得它:intcheck=Integer.parseInt((String)sessionF.createSQLQuery("selectto_char(count(*))ascountfromuser_tableswheretable_nameupper('TEST')").uniqueResult());我希望在

javax.persistence.NoResultException : getSingleResult() did not retrieve any entities

我用ejb创建了一个命名查询来检查用户名是否被使用。当singleResult为null时,我得到以下异常:javax.persistence.NoResultException:getSingleResult()didnotretrieveanyentities但是这个异常是我想要的用户名空闲时的结果。代码如下:publicUsergetUserByUsername(Stringusername)throwsDAOException{try{Queryq=em.createNamedQuery(User.getUserByUsername);q.setParameter("usern

java - JPA EntityManager.getSingleResult() 为 COUNT 查询返回什么?

EntityManager.getSingleResult()对COUNT查询返回什么?那么..foo的确切运行时类型是什么?Objectfoo=em.createQuery("SELECTCOUNT(t)FROMcom.company.ThingtWHEREprop=:param").setParameter("param",value).getSingleResult(); 最佳答案 根据JPAspecification,COUNT返回一个Long:4.8.4AggregateFunctionsintheSELECTClause

java - JPA getSingleResult() 或 null

我有一个insertOrUpdate方法,它在Entity不存在时插入它,如果存在则更新它。要启用此功能,我必须findByIdAndForeignKey,如果它返回null如果没有则插入,然后更新。问题是如何检查它是否存在?所以我尝试了getSingleResult。但是如果publicProfilefindByUserNameAndPropertyName(StringuserName,StringpropertyName){StringnamedQuery=Profile.class.getSimpleName()+".findByUserNameAndPropertyName"