今天在做一个功能的时候 
遇到了。一个Could not resolve property 的问题。

配置文件如下:

  1. <many-to-one name="user"  class="Users" column="StudentExam_user_fid" cascade="all" ></many-to-one>

查询代码:

  1. Criteria crt = session.createCriteria(StudentExam.class).add(Restrictions.eq("exam.id", ExamId)).add(
  2. Restrictions.eq("reading", reading)).add(Restrictions.like("user.truename", name));
  3. return crt.setFirstResult(start).setMaxResults(max).list();

在网上找了好久。所有人给的理由都是“对照配置文件以及实体类,是否写错了字段名称” 
在我一再的确认下,字段名称没有任何错误…… 
而且使用user.id是可以进行查询的。除了这个以外。别的都不可以用! 
于是开始对配置文件进行修改。尝试了 lazy设置为false 等等。。想对应的修改 
Users配置文件的修改。未果

最后,经过各种挣扎。以及Hibernate相关API的查找。最终终于找出解决办法

  1. Criteria crt = session.createCriteria(StudentExam.class).add(Restrictions.eq("exam.id", ExamId)).add(
  2. Restrictions.eq("reading", reading)).createCriteria("user").add(Restrictions.like("truename", name));

对。就是这样写。在使用完StudentExam里的属性后。

  1. .createCriteria("user")

设置到user实体里。然后再选择属性 
注:这里的user是StudentExam类中的名称

注意一般情况下都是 user这个类的关系

最新文章

  1. How to build .apk file from command line(转)
  2. Mac OSX上的软件包管理工具,brew 即 Homebrew
  3. 利用Native Client OLEDB 11 高效率地对SQL SERVER 进行查询和插入操作
  4. Centos6.5 minicom安装与配置
  5. sessionStorage html5客户端本地存储之sessionStorage及storage事件
  6. iOS-添加测试设备Identifier
  7. UVa 10391 (水题 STL) Compound Words
  8. 如何在64位的Windows中安裝PLSQLDEVELOPER 8
  9. 2.MVC框架开发(视图开发----基础语法)
  10. PAT_1026 程序运行时间
  11. 关于在repeater中的checkbox实行多选和全选
  12. Python之matplotlib学习(四)
  13. window10:jdk 8下载和安装步骤
  14. 常用的js效果
  15. c# 钩子类
  16. C# Global.asax.cs 定时任务
  17. 数组长度为len,数组元素的范围是0到len-1,找出数组的重复元素
  18. 面向对象【day08】:动态导入模块(八)
  19. Java序列化Serializable
  20. PTA 7-6 列出连通集(深搜+广搜)

热门文章

  1. AngularJs学习笔记--html compiler
  2. JavaScript 语言基础知识点总结(思维导图)
  3. jquery 插件开发及extend
  4. Sqli-labs less 44
  5. vi编辑器的常见使用技巧
  6. 安装软件(名称不记得了)后,系统开机提示 visual studio just-in-time debugger窗口(WINDOWS错误提示框)
  7. POJ 2070
  8. D&amp;F学数据结构系列——AVL树(平衡二叉树)
  9. 最常用的javascript方法函数
  10. node操作mysql数据库