我正在尝试在一个标准中使用别名和正常的关联名称,这给了我"重复的关联路径错误"我的课程如下
class FlightReservation{
Flight flight
User usr
String title
}
class Flight {
String flightNumber
Category category
}
class Category {
String name
}
标准查询
FlightReservation.createCriteria().list(){
createAlias("flight", "flt", CriteriaSpecification.LEFT_JOIN)
flight{
location{
eq("name", "abc")
}
}
order("flt.flightNumber", "asc")
}
现在我想起来,它似乎很明显,也许是Hibernate的限制 所以我想知道是否有另一种方法来实现这个目标
我知道我可以使用fetchMode来加载航班关联 但是从查询中删除别名会使订单子句变得困难(这将是动态的,嵌套闭包会让事情变得丑陋)
有人可能会说我为什么不能使用" flt" (别名)在这两个地方?实际上,使用嵌套闭包而不是别名的其他标准来自代码的其他部分,我应该重用该代码。
请告诉我,如果问题不够明确,那么对此错误的任何见解都会非常有用。