Sql 休眠条件:使用另一个表从一个表中选择对象

Sql 休眠条件:使用另一个表从一个表中选择对象,sql,hibernate,criteria,hibernate-criteria,Sql,Hibernate,Criteria,Hibernate Criteria,首先,如果我的问题没有很好的表述,我很抱歉 我有一个映射到相应表的简单对象: @Entity @Table(name = "USERS") public class User{ @Id @Column(name = "USER_ID") @GeneratedValue private long userId; @Column(name = "NAME") private String name; //getters and se

首先,如果我的问题没有很好的表述,我很抱歉

我有一个映射到相应表的简单对象:

@Entity
@Table(name = "USERS")
public class User{

    @Id
    @Column(name = "USER_ID")
    @GeneratedValue
    private long userId;

    @Column(name = "NAME")
    private String name;
        //getters and setters...
在我的数据库中,我还有另一个表。此表没有任何关联对象,但它有列“USER\u ID”-与“USERS”表中的ID相同


所以问题是,如何使用Hibernate标准从第一个表中选择与第二个表中具有相同用户ID的所有用户。例如,我有两个userId=1和=2的用户。在“USER_ID”列的第二个表中,我只有值“2”。因此,我只需要第一个表中userId=2的用户。

您的查询是外键关系的典型示例,但正如您所说,您没有另一个表的休眠映射模型。最好在用户映射文件中使用sql查询 在用户对象中收集此查询结果

像这样的 挑选 user.Name为{user.Name} 来自用户 连接另一个\u表另一个\u表 ON user.ID=另一个_table.user_ID

没有SQL是不可能的。HQL和条件查询仅使用映射实体。