lemostic 2019-08-22 10:53 采纳率: 60%
浏览 652

Criteria怎么按照级联属性进行排序?

Criteria criteria = session.createCriteria(User.class);

criteria.addOrder(Order.asc("age"));

List users = criteria.list();

以上查询方法可以按照User中的age属性进行排序,但是现在遇到一个情况,User实体类中,关联了一个Person对象,这种情况下如何根据级联属性进行排序呢?也就是说希望以User类中的Person对象的证件号码(idCard)这个属性进行排序,下面代码会出错:

Criteria criteria = session.createCriteria(User.class);

criteria.addOrder(Order.asc("person.idCard"));

List users = criteria.list();

以上代码最后执行报如下错误信息:

could not resolve property: person.idCard of: com.example.User

难道不能以级联属性进行排序吗?如果不能的话,将person.idCard的排序规则换成person.id就又可以排序,因为person的id是Person实体类对应数据库表的主键,跟踪代码发现恰好主外键关联的属性会加进来。那这样的话,如果对应的类属性不是该类的主键,又该怎么添加排序规则呢?我刚好想在查询User对象时,使用User对应的Person的idCard字段来排序,User对象中又没有idCard这个属性,请教各位这种情况怎么处理呢?

  • 写回答

0条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 easyclick重启app
      • ¥15 ros系统里Python版本问题
      • ¥15 不兼容驱动程序删不了,内核隔离打不开
      • ¥15 Centos7重启网卡自动down,只能手动up
      • ¥15 multisim用74ls148做一个5号病号呼叫系统
      • ¥15 单片机,传感器,LCD1602
      • ¥15 关于adams 批处理仿真时间太长的问题
      • ¥15 fate部署问题请求帮助
      • ¥15 关于#arcpy#的问题:arcpy栅格计算器批处理(语言-python)
      • ¥15 stata logit的备选项自变量不同