java
  • hibernate
  • 2012-02-15 70 views 0 likes 
    0

    我堆叠了一个小东西:休眠结果加入左边

    我在数据库中有两个表,它们是相关的 - User和UserReference。

    UserReference我有场的userid,其在用户有关ID

    我已经查询到MySQL与加入左:

    "FROM User as user left join fetch user.userReferences WHERE login='"+login+"' or email='"+login+"' AND password = '" +password+ "'" ; 
    

    查询就可以了,我得到的结果。我将结果发送到控制器,将其更改为列表:query.list();}。

    在控制器中,我收到结果并将其推送到用户列表中。

    用户列表我可以从表用户

    在表用户信息有:

    @OneToMany(fetch = FetchType.LAZY, mappedBy = "user") 
    public Set<UserReference> getUserReferences() { 
        return this.userReferences; 
    } 
    

    而现在 - 我想从表UserReference数据哪些在用户列表,因为我的查询有JOIN。

    我该怎么办?

    我正在试图做这样的事情:

    List<UserReference> userReference = (List<UserReference>) user.get(0).getUserReferences(); 
          System.out.println(userReference.get(0).getAge()); 
    

    但它不工作。

    你能帮我吗?

    回答

    1

    您不能将Set设置为列表,迭代Set来获取userRefences。

    相关问题