版权声明: https://blog.csdn.net/sd1209286540/article/details/89644203
1.利用管道获取数据
/**
* 获取redis存的所有数据
*@return
*/
public static JSONArray getAllEntity(){
JSONArray array = new JSONArray();
Jedis jedis = getJedisInstance();
jedis.select(BaseCodes.REDIS_LIBRARY);
Pipeline pip = jedis.pipelined();
try {
Set<String> keys = jedis.keys("*");
if(null!=keys && keys.size()>0){
//获取管道
Map<String,Response<String>> responses = new HashMap<String,Response<String>>(keys.size());
for(String key : keys) {
responses.put(key, pip.get(key));
}
pip.sync();
for(String k : responses.keySet()) {
array.add(JSONObject.parse(responses.get(k).get()));
}
}
} catch (Exception e) {
e.printStackTrace();
RedisUtil.returnBrokenResource(jedis);
}finally{
RedisUtil.returnResource(jedis);
}
return array;
}
2.利用管道更新redis
/**
* 根据键删除对象
*@version 2018年10月17日
*@param keys
*/
public static void delectEntity(List<String> keys){
Jedis jedis = getJedisInstance();
jedis.select(BaseCodes.REDIS_LIBRARY);
Pipeline pip = jedis.pipelined();
try {
for(String key : keys){
pip.del(key);
}
pip.sync();
} catch (Exception e) {
e.printStackTrace();
RedisUtil.returnBrokenResource(jedis);
}finally{
RedisUtil.returnResource(jedis);
}
}
/**
* 添加user
*@Description:TODO
*@version 2018年10月23日
*@param list
*/
public static void addUserEntity(List<User> list){
Jedis jedis = getJedisInstance();
jedis.select(BaseCodes.REDIS_LIBRARY2);
Pipeline pip = jedis.pipelined();
try {
if(null != list && !list.isEmpty()){
list.stream().forEach(user -> {
pip.set(user.getUserName()+"-"+user.getUserId(), JSONObject.toJSON(user).toString());
});
}
pip.sync();//同步
} catch (Exception e) {
e.printStackTrace();
RedisUtil.returnBrokenResource(jedis);
}finally{
RedisUtil.returnResource(jedis);
}
}
/**
* 根据key获取用户信息,如果没有传入key则默认获取所有用户
*@Description:TODO
*@version 2018年10月23日
*@param keys
*@return
*/
public static List<User> getUserList(List<String> keys){
List<User> list = new ArrayList<User>();
JSONArray array = new JSONArray();
Jedis jedis = getJedisInstance();
jedis.select(BaseCodes.REDIS_LIBRARY2);
Pipeline pip = jedis.pipelined();
try {
if(null != keys && !keys.isEmpty()){
Map<String,Response<String>> responses = new HashMap<String,Response<String>>(keys.size());
for(String key : keys) {
responses.put(key, pip.get(key));
}
pip.sync();
for(String k : responses.keySet()) {
array.add(JSONObject.parse(responses.get(k).get()));
}
}else{
Set<String> keySet = jedis.keys("*");
if(null!=keySet && keySet.size()>0){
//获取管道
Map<String,Response<String>> responses = new HashMap<String,Response<String>>(keySet.size());
for(String key : keySet) {
responses.put(key, pip.get(key));
}
pip.sync();
for(String k : responses.keySet()) {
array.add(JSONObject.parse(responses.get(k).get()));
}
}
}
if(null != array && !array.isEmpty()){
list = JSONObject.parseArray(array.toJSONString(), User.class);
}
} catch (Exception e) {
e.printStackTrace();
RedisUtil.returnBrokenResource(jedis);
}finally{
RedisUtil.returnResource(jedis);
}
return list;
}