u.r.role_id 
u   和   r 理解下。

解决方案 »

  1.   

    User 和 Role 应该是 多对一的关系。 在User的bean里定义了:private Role r;  也就是ManyToOne的关联关系映射。很简单,就是查询roleid=xxx的User对象。
      

  2.   

    还是不明白 这个加"" 是什么意思  是固定写法吗? 根据 role.role_id  查找User 里的属性吗
      

  3.   

    加""  完全没用,你去掉也是一样的。
    根据 role.role_id  查找User 里的属性吗  是的,你的User对象关联映射了Role对象,简单的说就是你的User里肯定有一个Role类型的成员变量,所以你可以通过懒加载去取到Role的id
      

  4.   

    看错了。少看一个引号。 role.getRole_id()是当作字符串的类型去查询的,你注意一下:
    String hql = "from User u where u.r.role_id=   '   " + role.getRole_id()+"   '   ";
    就是拼接SQL,然后把id作为字符串去查询。