我已经上了实体课程
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
我有Quices():
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
我原本希望它至少包括一些关于我的实体的信息
县
和内部连接
tblRoad
.
图布路
有主键
roadId
所以我期待
this_.roadId
与…结合
tblRoad.roadId
,我想
tblRoad.countyId
要设置为的主键
县
,也就是说
countyId
.
当我使用自己的实体类型时,为什么本例中的查询没有正确构建?如果我只使用整数和字符串,它们可以正常工作,但不使用实体。我如何使这样的连接与我自己的实体一起工作?