[英]Hibernate query by example (from Spring 3)
我已经制作了我的实体课Adress
, Road
和County
。 一个Road
是在County
和Adress
在上Road
。 我想列出一个County
所有Adresses
。 因此,在我的AdressService
我说:
public List<Adress> AllAdresses(County county) {
Adress adress = new Adress();
Road road = new Road();
road.setCounty(county);
adress.setRoad(road);
Example example = Example.create(adress);
return (List<Adress>) adressDAO.query(Adress.class, example);
}
在我的AdressDAO
我有query():
public List query(Class<?> c, Example example) {
return getSession().createCriteria(c).add(example).setMaxResults(100).list();
}
这将在我的数据库服务器上执行以下查询:
select this_.AdressId as AdressId2_0_,
this_.Description as Descript3_2_0_,
this_.DescriptionShort as Descript4_2_0_,
this_.HouseLetter as HouseLetter2_0_,
this_.HouseNr as HouseNr2_0_,
this_.RoadId as RoadId2_0_
from tblAdress this_
where (this_.HouseNr=0)
limit 100
我原以为它至少包含了关于我的实体County
一些信息,以及一个带有tblRoad
的内部tblRoad
。 tblRoad
有一个主键roadId
,所以我希望this_.roadId
与tblRoad.roadId
,我希望将tblRoad.countyId
设置为County
的主键,即countyId
。
当我使用自己的实体类型时,为什么这个例子中的查询没有正确构建? 如果我只使用整数和字符串,它们工作正常,但不是实体。 如何使这样的连接与我自己的实体一起工作?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.