RedisService.java 1.9 KB
Newer Older
武汉红喜's avatar
武汉红喜 已提交
1
package org.hongxi.whatsmars.redis.client.service;
2 3

import java.util.Collection;
武汉红喜's avatar
武汉红喜 已提交
4
import java.util.List;
5 6 7 8 9 10 11 12 13 14 15
import java.util.Set;

public interface RedisService<T> {
	/**
	 * <pre>
	 *  
	 * 通过key删除 
	 * &#64;param keys 
	 * &#64;return 被删除的记录数
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
16
	long delete(String... keys);
17 18 19 20 21 22 23 24 25

	/**
	 * <pre>
	 *  
	 * 通过keys删除 
	 * &#64;param keys 
	 * &#64;return 被删除的记录数
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
26
	long delete(Collection<String> keys);
27 28 29 30 31 32 33 34 35 36

	/**
	 * <pre>
	 *  
	 *  &#64;param key 
	 *  &#64;param value 
	 *  &#64;param activeTime 秒 
	 *  &#64;return 添加key value 并且设置存活时间
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
37
	boolean set(byte[] key, byte[] value, long activeTime);
38 39 40 41 42 43 44 45 46 47

	/**
	 * <pre>
	 *  
	 * &#64;param key 
	 * &#64;param value 
	 * &#64;param activeTime 秒 
	 * &#64;return 添加key value 并且设置存活时间
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
48
	boolean set(String key, String value, long activeTime);
49 50 51 52 53 54 55 56 57

	/**
	 * <pre>
	 *  
	 *  &#64;param key 
	 *  &#64;param value 
	 *  &#64;return 添加key value
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
58
	boolean set(String key, String value);
59 60 61 62 63 64 65 66 67

	/**
	 * <pre>
	 *  
	 *  &#64;param key 
	 *  &#64;param value 
	 *  &#64;return 添加key value
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
68
	boolean set(byte[] key, byte[] value);
69
	
武汉红喜's avatar
武汉红喜 已提交
70
	boolean set(byte[] key, T value, long activeTime);
71 72 73 74 75 76 77 78

	/**
	 * <pre>
	 *  
	 * &#64;param key 
	 * &#64;return 获得value
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
79
	String get(String key);
80
	
武汉红喜's avatar
武汉红喜 已提交
81
	T getObject(String key, Class<T> c);
82
	
武汉红喜's avatar
武汉红喜 已提交
83
	byte[] getBytes(String key);
84 85 86 87 88 89 90 91

	/**
	 * <pre>
	 *  
	 * &#64;param pattern 
	 * &#64;return 通过正则匹配keys
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
92
	Set<String> matchKeys(String pattern);
93 94 95 96 97 98 99 100

	/**
	 * <pre>
	 *  
	 * &#64;param key 
	 * &#64;return 检查key是否已经存在
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
101
	boolean exists(String key);
102 103 104 105 106 107 108

	/**
	 * <pre>
	 *  
	 * &#64;return 清空所有数据
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
109
	boolean flushDB();
110

武汉红喜's avatar
武汉红喜 已提交
111 112 113 114 115 116 117
	/**
	 * <pre>
	 *
	 * &#64;param keys
	 * &#64;return 批量获取key的值
	 * </pre>
	 */
武汉红喜's avatar
武汉红喜 已提交
118
    List<T> multiGet(Collection keys);
119
}