Java 休眠:HQL不工作
我使用where子句和和在hibernate应用程序中编写了一个SQL查询 这是一种方法Java 休眠:HQL不工作,java,sql,hibernate,Java,Sql,Hibernate,我使用where子句和和在hibernate应用程序中编写了一个SQL查询 这是一种方法 public List<Comobility> getComobilityByIdComobilityItemsAndIdPatient(int idComobilityItems, int idPatient, Session session) { Query query = session.createQuery("from Comobility where comobility_i
public List<Comobility> getComobilityByIdComobilityItemsAndIdPatient(int idComobilityItems, int idPatient, Session session) {
Query query = session.createQuery("from Comobility where comobility_items_idcomobility_items= :idComobilityItems and patient_idpatient= :idpatinet");
query.setParameter("idComobilityItems", idComobilityItems);
query.setParameter("idpatinet", idPatient);
List<Comobility> list = query.list();
return list;
}
public List getcomobilitybyidcomobilityitems和idPatient(int-idComobilityItems,int-idPatient,会话会话){
Query Query=session.createQuery(“来自可移动性,其中可移动性项目可移动性项目可移动性项目=:可移动性项目和患者可移动性项目=:可移动性”);
query.setParameter(“idComobilityItems”,idComobilityItems);
query.setParameter(“idPatient”,idPatient);
List=query.List();
退货清单;
}
但这是行不通的。没有任何例外或错误。实际上,没有任何结果
有什么想法吗?您需要检查日志中生成的SQL,并根据数据库执行它。如果查询被编译并且没有返回任何记录,则表示没有特定条件的记录
要通过Hibernate生成SQL,请在Hibernate配置中将属性
show\u SQL
设置为true
。您应该这样尝试
public List<Comobility>getComobilityByIdComobilityItemsAndIdPatient(int idComobilityItems, int idPatient, Session session) {
try {
logger.debug("xxxx")
//do comething
} catch (Exception e) {
e.printStackTrace();
}
}
public listGetComobilityByIdcomobilityItems和idPatient(int-idComobilityItems,int-idPatient,会话会话){
试一试{
logger.debug(“xxxx”)
//干什么
}捕获(例外e){
e、 printStackTrace();
}
}
null
您得到了什么错误/异常“但这不起作用”如何?它以什么方式不起作用?你看到了什么行为?这是一个编译错误吗?是否在运行时引发异常?你从数据库中得到意外的结果了吗?!怎么了?@mhasan:没有任何例外或错误。这就是我感到困惑的原因。“无结果”是指代码生成的列表是空的吗?您已经验证了数据库中是否存在符合您搜索条件的数据?@nbrooks:并非所有问题都会产生错误,您有13K+分,即使您是一名学生,您也应该认真了解这一点。