java redis相关操作类
2016-05-23 10:38
387 查看
import org.springframework.stereotype.Component;
import java.util.Arrays;
import java.util.List;
import lombok.extern.slf4j.Slf4j;
import redis.clients.jedis.Jedis;
/**
* Created by echo on 15-8-27. 有关redis的相关操作类
*/
@Component
@Slf4j
public class JedisComponent {
public static final Integer SECONDS = 300;
/**
* 获得redis连接
*/
public Jedis getJedis() {
Jedis jedis = JedisPoolInfos.getMasterJedis();
// if (StringUtils.isBlank(redisConfig))
// throw new RuntimeException("redis config can not be null.");
// String[] tempArray = redisConfig.split("\\:");
// for (String str : tempArray) {
// if (StringUtils.isBlank(str))
// throw new RuntimeException("redis config format error. ");
// if (tempArray.length < 3)
// throw new RuntimeException("redis config format error. ");
// }
// Jedis jedis = new Jedis(redisConfig);//redis服务器的ip和端口
if (!jedis.isConnected()) {
throw new RuntimeException("redis connected error. ");
}
return jedis;
}
/**
* 删除对应key值数据
*/
public Boolean delKey(String key) {
// log.info("redis command ={},key={}", "delKey", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.del(key) == 1L ? Boolean.TRUE : Boolean.FALSE;//删除key
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 对存储在指定key的数值执行原子的加1操作。
*/
public Long incr(String key) {
// log.info("redis command ={},key={}", "incr", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.incr(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 判断某个key值是否存在
*/
public Boolean isExist(String key) {
// log.info("redis command ={},key={}", "isExist", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.exists(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 多个key 逗号连接
*/
public Boolean addKeys(String keys, String model, Integer userId) {
Jedis jedis = null;
try {
jedis = getJedis();
List<String> keyList = Arrays.asList(keys.split(","));
for (String key : keyList) {
if (jedis.exists(model + "_" + key)) {
return Boolean.FALSE;
}
}
for (String key : keyList) {
jedis.set(model + "_" + key, userId.toString());
}
for (String key : keyList) {
if (jedis.exists(model + "_" + key)) {
System.out.println(model + "_" + key + "的Value:" + jedis.get(model + "_" + key));
return Boolean.TRUE;
}
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 仅当key不存在时才Set,超时时间为缺省时间300s
*/
public Boolean add(String key, String model, String value) {
// log.info("redis command ={},key={},value={}", "add", model + "_" + key, value);
Jedis jedis = null;
try {
jedis = getJedis();
if (jedis.setnx(model + "_" + key, value) == 1) {
jedis.expire(model + "_" + key, SECONDS);
return Boolean.TRUE;
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 仅当key不存在时才Set,超时时间为自定义时间
*/
public Boolean addSeconds(String key, String model, String value, Integer seconds) {
// log.info("redis command ={},key={},value={}", "addSeconds", model + "_" + key, value);
Jedis jedis = null;
try {
jedis = getJedis();
if (jedis.setnx(model + "_" + key, value) == 1) {
jedis.expire(model + "_" + key, seconds);
return Boolean.TRUE;
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 根据key获取对应值
*/
public String get(String key) {
// log.info("redis command ={},key={}", "get", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.get(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 不管key存不存在,设置自定义超时时间的key值
*/
public Boolean set(String key, int seconds, String value) {
// log.info("redis command ={},key={},value={}", "set", key, value);
Jedis jedis = null;
try {
jedis = getJedis();
String status = jedis.setex(key, seconds, value);
if ("OK".equals(status)) {
return Boolean.TRUE;
} else {
return Boolean.FALSE;
}
} finally {
if (jedis != null) {
jedis.close();
}
}
}
}
import java.util.Arrays;
import java.util.List;
import lombok.extern.slf4j.Slf4j;
import redis.clients.jedis.Jedis;
/**
* Created by echo on 15-8-27. 有关redis的相关操作类
*/
@Component
@Slf4j
public class JedisComponent {
public static final Integer SECONDS = 300;
/**
* 获得redis连接
*/
public Jedis getJedis() {
Jedis jedis = JedisPoolInfos.getMasterJedis();
// if (StringUtils.isBlank(redisConfig))
// throw new RuntimeException("redis config can not be null.");
// String[] tempArray = redisConfig.split("\\:");
// for (String str : tempArray) {
// if (StringUtils.isBlank(str))
// throw new RuntimeException("redis config format error. ");
// if (tempArray.length < 3)
// throw new RuntimeException("redis config format error. ");
// }
// Jedis jedis = new Jedis(redisConfig);//redis服务器的ip和端口
if (!jedis.isConnected()) {
throw new RuntimeException("redis connected error. ");
}
return jedis;
}
/**
* 删除对应key值数据
*/
public Boolean delKey(String key) {
// log.info("redis command ={},key={}", "delKey", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.del(key) == 1L ? Boolean.TRUE : Boolean.FALSE;//删除key
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 对存储在指定key的数值执行原子的加1操作。
*/
public Long incr(String key) {
// log.info("redis command ={},key={}", "incr", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.incr(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 判断某个key值是否存在
*/
public Boolean isExist(String key) {
// log.info("redis command ={},key={}", "isExist", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.exists(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 多个key 逗号连接
*/
public Boolean addKeys(String keys, String model, Integer userId) {
Jedis jedis = null;
try {
jedis = getJedis();
List<String> keyList = Arrays.asList(keys.split(","));
for (String key : keyList) {
if (jedis.exists(model + "_" + key)) {
return Boolean.FALSE;
}
}
for (String key : keyList) {
jedis.set(model + "_" + key, userId.toString());
}
for (String key : keyList) {
if (jedis.exists(model + "_" + key)) {
System.out.println(model + "_" + key + "的Value:" + jedis.get(model + "_" + key));
return Boolean.TRUE;
}
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 仅当key不存在时才Set,超时时间为缺省时间300s
*/
public Boolean add(String key, String model, String value) {
// log.info("redis command ={},key={},value={}", "add", model + "_" + key, value);
Jedis jedis = null;
try {
jedis = getJedis();
if (jedis.setnx(model + "_" + key, value) == 1) {
jedis.expire(model + "_" + key, SECONDS);
return Boolean.TRUE;
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 仅当key不存在时才Set,超时时间为自定义时间
*/
public Boolean addSeconds(String key, String model, String value, Integer seconds) {
// log.info("redis command ={},key={},value={}", "addSeconds", model + "_" + key, value);
Jedis jedis = null;
try {
jedis = getJedis();
if (jedis.setnx(model + "_" + key, value) == 1) {
jedis.expire(model + "_" + key, seconds);
return Boolean.TRUE;
}
return Boolean.FALSE;
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 根据key获取对应值
*/
public String get(String key) {
// log.info("redis command ={},key={}", "get", key);
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.get(key);
} finally {
if (jedis != null) {
jedis.close();
}
}
}
/**
* 不管key存不存在,设置自定义超时时间的key值
*/
public Boolean set(String key, int seconds, String value) {
// log.info("redis command ={},key={},value={}", "set", key, value);
Jedis jedis = null;
try {
jedis = getJedis();
String status = jedis.setex(key, seconds, value);
if ("OK".equals(status)) {
return Boolean.TRUE;
} else {
return Boolean.FALSE;
}
} finally {
if (jedis != null) {
jedis.close();
}
}
}
}
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- redis安装问题小结
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序