繁体   English   中英

Hibernate查询示例(来自Spring 3)

[英]Hibernate query by example (from Spring 3)

我已经制作了我的实体课AdressRoadCounty 一个Road是在CountyAdress在上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_.roadIdtblRoad.roadId ,我希望将tblRoad.countyId设置为County的主键,即countyId

当我使用自己的实体类型时,为什么这个例子中的查询没有正确构建? 如果我只使用整数和字符串,它们工作正常,但不是实体。 如何使这样的连接与我自己的实体一起工作?

来自Hibernate文档

版本属性,标识符和关联将被忽略

而且,正如他们所说的那样。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM