Spring RedisTemplate操作-Set操作

package com.panku.web.redis;
import java.util.Arrays;
import java.util.Collection;
import javax.annotation.Resource;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.dao.DataAccessException;
import org.springframework.data.redis.connection.DataType;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.core.RedisCallback;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.SetOperations;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
/**
 * Spring RedisTemplate操作-ZSet操作
 * @author ccx
 *
 */
@RunWith(SpringJUnit4ClassRunner.class)  
@ContextConfiguration(locations = "classpath:applicationContext.xml")  
public class RedisTemplateSet {
    @Resource(name="redisTemplate")
    private RedisTemplate<String, String> rt;
    
    public void flushdb(){
        rt.execute(new RedisCallback<Object>() {
            public String doInRedis(RedisConnection connection) throws DataAccessException {
                connection.flushDb();
                return "ok";
            }
        });
    }
    @Test
    public void set(){
        flushdb();
        SetOperations<String, String> vo = rt.opsForSet();
        vo.add("book", "a","b","c");
        vo.add("bag", "b","c","d","e");
        vo.add("bag1", "a","c","d","e");
//        vo.pop("bag");
    }
    @Test
    public void get(){
        SetOperations<String, String> vo = rt.opsForSet();
        out(vo.members("book"));
        out(vo.members("bag"));
        out(vo.randomMember("book"));
        out(vo.difference("book", Arrays.asList("bag1","bag")));
        out(vo.difference("book","bag"));
        out(vo.differenceAndStore("book", "bag", "des"));
        out(vo.members("des"));
        out(vo.randomMembers("book", 2));
        out(vo.distinctRandomMembers("book", 2));
        out(vo.intersect("book", "bag"));
        out(vo.intersectAndStore("book", "bag",    "des1"));
        out(vo.members("des1"));
        out(vo.isMember("des1", "b"));
        out(vo.move("des1", "b", "des2"));
        out(vo.members("des1"));
        out(vo.members("des2"));
        out(vo.size("des2"));
        out(vo.union("book", "bag"));
        out(vo.unionAndStore("book", "bag", "jack"));
        out(vo.members("jack"));
        vo.remove("jack", "d","b");
        out(vo.members("jack"));
        
    }
    
    public void out(String str){
        System.out.println(str);
    }
    public void out(Collection list){
        System.out.println(list);
    }
    public void out(long num){
        System.out.println(num);
    }
    public void out(boolean num){
        System.out.println(num);
    }
    public void out(DataType num){
        System.out.println(num);
    }
}


版权声明:本文为spring_show原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。