hibernate 查询不到set的问题。。

我在User实体类里面放了一个User类型的Set来表示用户之间的好友关系,但是查询到的是空,请问是哪里出错了 。。
这里是User实体类部分的代码

private Set friends;
public Set getFriends() {
return friends;
}
public void setFriends(Set friend) {
this.friends = friend;
}

这里是daoimpl的部分代码。。

@Override
public User searchlogin(User user) {
    getSession();
    String hql="from User where username='"+user.getUsername()+"' and password='"+user.getPassword()+"'";
    Query query= session.createQuery(hql);
    List<User> list=query.list();

    return list.get(0);
} 

这里是hbm.xml部分的代码

 <set name="friends" table="friend">  
       <key column="uid"></key>  
       <one-to-many class="bean.User" />  
    </set>  

不错,很古老的东西。这个叫级联查询,你搜索 hibernate 级联查询。貌似是要设置hibernate 二级缓存,一种设置lazy,记不太清了。自己慢慢百度

这个要在多的一方有少的一方的一个外键,看看是不是这个的问题