如何在一个col上返回带有Hibernate搜索的列表?

时间:2011-03-30 00:31:11

标签: java hibernate spring-mvc

我有以下代码示例,它返回我的数据库中的朋友列表使用Hibernate并且它可以工作但我知道更改函数传递给用户的String。如何更改以下代码以返回用户名与我传入的字符串匹配的所有朋友?

public List<Friend> listFriends() 
{
    return (List<Friend>) sessionFactory.getCurrentSession()
    .createCriteria(Friend.class).list();
}

1 个答案:

答案 0 :(得分:3)

有几种方法可以做到这一点。第一个也是最直接的是使用限制。

public List<Friend> listFriends(String userName) {
    return (List<Friend>) sessionFactory.getCurrentSession()
        .createCriteria(Friend.class)
        .add(Restrictions.eq("userName", userName) )
        .list();
}

另一种方法是使用一个例子。

public List<Friend> listFriends(String userName) {
    Friend friend = new Friend();
    friend.setUserName(userName);

    return (List<Friend>) sessionFactory.getCurrentSession()
        .createCriteria(Friend.class)
        .add(Example.create(friend))
        .list();
}