package com.xiaozhi.blog.redis; import java.util.List; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import com.xiaozhi.blog.utils.KeyUtils; @Component public class ContactsDao { private static Log logger = LogFactory.getLog(ContactsDao.class); @Autowired private StringRedisTemplate template; /** * 加用户到收藏 * @param name * @param jsonUser */ public void addUserToBookMark(String name,String jsonUser){ logger.debug("----------------->jsonUser :"+jsonUser); template.opsForList().leftPush(KeyUtils.bookMark(name), jsonUser); } /** * 删除收藏 * @param name * @param userid * @return */ public boolean removeBookMark(String name,String userid){ List<String> users = getUserBookMarkList(name); for(int i=0;i<=users.size()-1;i++){ if(StringUtils.hasText("id:\""+userid+"\"")){ long result= template.opsForList().remove(KeyUtils.bookMark(name), 0, users.get(i)); if(result>=0)return true; } } return false; } /** * 获取收藏列表 * @param name * @return */ public List<String> getUserBookMarkList(String name){ List<String> usersList =template.opsForList().range(KeyUtils.bookMark(name), 0, -1); for(String uString :usersList){ logger.debug("----------------->"+uString); } return usersList; } }