List rooms = getHibernateTemplate().find("from Room room where room.roomName = '" + room.getRoomName()+ "'" + " and room.house_id = "+ room.getHouse().getId());
设计是:room->house ManyToOne 单向的关系
hibernate会自动在room表中生成house_id外键,所以最开始用的是room.house_id,会报错:
org.springframework.orm.hibernate3.HibernateQueryException: could not resolve property: house_id of: com.StringBeans.entity.core.Room [from
com.StringBeans.entity.core.Room room where room.roomName = '1232131' and room.house_id = 1]; nested exception is org.hibernate.QueryException: could not resolve property: house_id of: com.StringBeans.entity.core.Room [from com.StringBeans.entity.core.Room
room where room.roomName = '1232131' and room.house_id = 1]
应该用面向对象的思想,即room.house.id

本文介绍了一个关于使用Hibernate框架进行查询时出现的异常问题及其解决方案。问题发生在尝试通过属性名称进行查询时,错误提示无法解析属性house_id。文章指出正确的做法是采用面向对象的方式,即通过room.house.id来正确引用外键。
5703

被折叠的 条评论
为什么被折叠?



