Sql Hibernate查询无法获取参数

Sql Hibernate查询无法获取参数,sql,hibernate,parameters,hql,Sql,Hibernate,Parameters,Hql,这个问题令人难以置信地沮丧。基本上,我花了1小时来建立一个完整的hibernate项目。但是这个问题让我耽搁了将近5个小时,我一直在努力 Query query = session.createQuery("FROM " + FieldData.class.getName() +" ff WHERE ff.fieldData = :fieldData"); query.setParameter("fieldData", fieldData); 无论我做什么(我的意思是认真的),我都会受到非法

这个问题令人难以置信地沮丧。基本上,我花了1小时来建立一个完整的hibernate项目。但是这个问题让我耽搁了将近5个小时,我一直在努力

Query query = session.createQuery("FROM " + FieldData.class.getName() +" ff WHERE ff.fieldData = :fieldData");

query.setParameter("fieldData", fieldData);
无论我做什么(我的意思是认真的),我都会受到非法辩论的排斥。我也尝试了query.setLong(),因为fieldData恰好是Long值

我检查了接球手和二传手,他们看起来像这样

@Column(..I cant reveal mappings)
getFieldData()
{
   return this.fieldData;
}

setFieldData(Long fieldData)
{
   return this.fieldData;
}
最后,变量声明本身如下所示:

 private Long fieldData;
这是怎么回事?为什么解决这个问题如此困难。这些框架是否足够成熟,可以在没有bug的情况下工作?我正在使用Hibernate3.4。或者这就是我对开源产品的全部期望

最后,query.createQuery()使用的参数元数据对象没有在其中拾取的变量


请让我知道我做错了什么。我真的很想知道我是一个犯错误的人,框架没有任何问题-这对我来说真的是个好消息

好的,经过大量的努力,我发现了这个问题的症结所在。在创建hibernate会话时,我没有包含POJO打包名称。这导致了各种各样的参数绑定问题。Hibernate最糟糕的一点是它抛出了贯穿始终的异常。当QueryParameterException一开始甚至无法解析该类时,它甚至会抛出QueryParameterException。我想他们得努力了。这使得Hibernate持久性很难用于开发,而整个设置对于任何微小的更改都极为脆弱。

org.Hibernate.QueryParameterException:找不到命名参数-->这是我使用query.setParameter()和query.setLong()得到的异常。我得到了相同的异常,但它用不同的语言抱怨(措辞)…您是否已将实体映射到DB表?因为命名参数上的一般性错误是由此引起的。@JoeTaras是的,我映射了。那里几乎没有错误。我导入了hibernate注释而不是javax。很难检测到,但它产生了一些问题。更大的问题是,我没有将POJO的包信息包含在创建sessionFactory时调用hibernate EUTIL类。这会引发各种错误。除此之外,我在hibernate.cfg.xml中包含的包信息没有被配置生成器获取。它确实成功地获取了文件本身,但无法解析文件中存在的包信息。