org.springframework.data.redis.core.ZSetOperations类的使用及代码示例

x33g5p2x  于2022-02-05 转载在 其他  
字(7.1k)|赞(0)|评价(0)|浏览(116)

本文整理了Java中org.springframework.data.redis.core.ZSetOperations类的一些代码示例,展示了ZSetOperations类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZSetOperations类的具体详情如下:
包路径:org.springframework.data.redis.core.ZSetOperations
类名称:ZSetOperations

ZSetOperations介绍

[英]Redis ZSet/sorted set specific operations.
[中]Redis ZSet/sorted set特定操作。

代码示例

代码示例来源:origin: yu199195/Raincat

@Override
public Boolean saveTxTransactionGroup(final TxTransactionGroup txTransactionGroup) {
  try {
    final String groupId = txTransactionGroup.getId();
    //保存数据 到sortSet
    redisTemplate.opsForZSet().add(CommonConstant.REDIS_KEY_SET, groupId, CommonConstant.REDIS_SCOPE);
    final List<TxTransactionItem> itemList = txTransactionGroup.getItemList();
    if (CollectionUtils.isNotEmpty(itemList)) {
      for (TxTransactionItem item : itemList) {
        redisTemplate.opsForHash().put(cacheKey(groupId), item.getTaskKey(), item);
      }
    }
  } catch (Exception e) {
    return false;
  }
  return true;
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Set<V> rangeByScore(double min, double max) {
  return ops.rangeByScore(getKey(), min, max);
}

代码示例来源:origin: yu199195/Raincat

@Override
public Boolean batchRemove(final List<String> txGroupIdList) {
  if (CollectionUtils.isEmpty(txGroupIdList)) {
    return false;
  }
  try {
    for (String key : txGroupIdList) {
      redisTemplate.opsForZSet().remove(CommonConstant.REDIS_KEY_SET, key);
    }
    final List<String> keys = txGroupIdList.stream().map(txGroupId ->
        String.format(CommonConstant.REDIS_PRE_FIX, txGroupId)).collect(Collectors.toList());
    redisTemplate.delete(keys);
    return true;
  } catch (Exception e) {
    e.printStackTrace();
    return false;
  }
}

代码示例来源:origin: eventuate-examples/eventuate-examples-restaurant-management

@Override
public List<RestaurantInfo> findAvailableRestaurants(Address deliveryAddress, DeliveryTime deliveryTime) {
  String zipCode = deliveryAddress.getZip();
  int dayOfWeek = deliveryTime.getDayOfWeek();
  int timeOfDay = deliveryTime.getTimeOfDay();
  String closingTimesKey = closingTimesKey(zipCode, dayOfWeek);
  Set<String> restaurantIds =
      redisTemplate.opsForZSet().rangeByScore(closingTimesKey, timeOfDay, 2359).stream()
      .map(tr -> tr.split("_"))
      .filter(v -> Integer.parseInt(v[0]) <= timeOfDay)
      .map(v -> v[1])
      .collect(Collectors.toSet());
  Collection<String> keys = keyFormatter.keys(restaurantIds);
  return restaurantTemplate.opsForValue().multiGet(keys);
}

代码示例来源:origin: yu199195/Raincat

rangeKeys = Sets.newHashSet(txTransactionQuery.getTxGroupId());
} else {
  keys = redisTemplate.keys(CommonConstant.REDIS_KEYS);
  rangeKeys = redisTemplate.opsForZSet()
      .range(CommonConstant.REDIS_KEY_SET, start, end - 1);
commonPager.setPage(PageHelper.buildPage(txTransactionQuery.getPageParameter(), totalCount));
final List<TxTransactionGroupVO> groupVOS = rangeKeys.stream().map((String key) -> {
  final Map<Object, TxTransactionItem> entries = redisTemplate.opsForHash()
      .entries(String.format(CommonConstant.REDIS_PRE_FIX, key));
  final Collection<TxTransactionItem> values = entries.values();

代码示例来源:origin: vakinge/jeesuite-libs

@Override
public void removeFromGroup(String cacheGroupKey, String key) {
  stringRedisTemplate.opsForZSet().remove(cacheGroupKey, key);
  redisTemplate.delete(key);
}

代码示例来源:origin: vakinge/jeesuite-libs

Set<String> keys = stringRedisTemplate.opsForZSet().range(cacheGroupKey, 0, -1);
if(keys.isEmpty())return;
final Object[] keysToArray = keys.toArray(new String[0]);
redisTemplate.execute(new RedisCallback<Void>() {
  @Override
  public Void doInRedis(RedisConnection connection) throws DataAccessException {
stringRedisTemplate.opsForZSet().remove(cacheGroupKey, keysToArray);

代码示例来源:origin: 5-Ason/ason-spring-cloud

/**
 * 有序集合添加
 * @param key
 * @param value
 * @param scoure
 */
public void zAdd(String key,Object value,double scoure){
  ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();
  zset.add(key,value,scoure);
}

代码示例来源:origin: 5-Ason/ason-spring-cloud

/**
   * 有序集合获取
   * @param key
   * @param scoure
   * @param scoure1
   * @return
   */
  public Set<Object> rangeByScore(String key,double scoure,double scoure1){
    ZSetOperations<String, Object> zset = redisTemplate.opsForZSet();
    return zset.rangeByScore(key, scoure, scoure1);
  }
}

代码示例来源:origin: whvcse/EasyWeb

/**
 * 添加元素,有序集合是按照元素的score值由小到大排列
 *
 * @param key
 * @param value
 * @param score
 * @return
 */
public Boolean zAdd(String key, String value, double score) {
  return redisTemplate.opsForZSet().add(key, value, score);
}

代码示例来源:origin: chenerzhu/proxy-pool

@Override
public List<Serializable> findAllByPage(int pageNumber, int pageSize) {
  Set<Serializable> set = redisCacheTemplate.opsForZSet().range(RedisKey.PROXY_IP_KEY, pageNumber*pageSize, (pageNumber+1)*pageSize);
  return new ArrayList<Serializable>(set);
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Long add(Set<TypedTuple<V>> tuples) {
  return ops.add(getKey(), tuples);
}

代码示例来源:origin: sentilo/sentilo

private void removeDeprecatedAlerts(final Collection<InternalAlert> frozenAlerts) {
 final Cursor<TypedTuple<String>> scanCursor = redisTemplate.opsForZSet().scan(SORTED_SET_KEY, ScanOptions.NONE);
 final List<String> membersToRemove = new ArrayList<String>();
 while (scanCursor.hasNext()) {
  final TypedTuple<String> member = scanCursor.next();
  // member verifies pattern providerId#sensorId#alertId
  final String[] tokens = member.getValue().split(Constants.REDIS_MEMBER_TOKEN);
  if (!frozenAlerts.contains(new InternalAlert(tokens[2]))) {
   membersToRemove.add(member.getValue());
  }
 }
 LOGGER.debug("Found {} members on Redis that need to be removed because them no longer exist on Catalog", membersToRemove.size());
 if (!CollectionUtils.isEmpty(membersToRemove)) {
  // Remove in blocks of 20 members maximum to not penalize Redis
  final int blockSize = 20;
  int fromIndex = 0;
  int toIndex = membersToRemove.size() < blockSize ? membersToRemove.size() : blockSize;
  do {
   final List<String> subListToRemove = membersToRemove.subList(fromIndex, toIndex);
   redisTemplate.opsForZSet().remove(SORTED_SET_KEY, subListToRemove.toArray(new Object[subListToRemove.size()]));
   fromIndex = toIndex;
   toIndex = toIndex + blockSize < membersToRemove.size() ? toIndex + blockSize : membersToRemove.size();
  } while (fromIndex < membersToRemove.size());
 }
}

代码示例来源:origin: chenerzhu/proxy-pool

@Override
public Long removeRt(ProxyIp proxyIp) {
  return redisCacheTemplate.opsForZSet().removeRangeByScore(RedisKey.PROXY_IP_RT_KEY, proxyIp.getId(), proxyIp.getId());
}

代码示例来源:origin: whvcse/EasyWeb

/**
 * @param key
 * @param values
 * @return
 */
public Long zRemove(String key, Object... values) {
  return redisTemplate.opsForZSet().remove(key, values);
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Long remove(Object... values) {
  return ops.remove(getKey(), values);
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Set<V> range(long start, long end) {
  return ops.range(getKey(), start, end);
}

代码示例来源:origin: whvcse/EasyWeb

/**
 * 根据Score值查询集合元素
 *
 * @param key
 * @param min 最小值
 * @param max 最大值
 * @return
 */
public Set<String> zRangeByScore(String key, double min, double max) {
  return redisTemplate.opsForZSet().rangeByScore(key, min, max);
}

代码示例来源:origin: spring-projects/spring-data-redis

@Override
public Long removeRangeByScore(double min, double max) {
  return ops.removeRangeByScore(getKey(), min, max);
}

代码示例来源:origin: whvcse/EasyWeb

/**
 * 获取集合的元素, 从小到大排序
 *
 * @param key
 * @param start 开始位置
 * @param end   结束位置, -1查询所有
 * @return
 */
public Set<String> zRange(String key, long start, long end) {
  return redisTemplate.opsForZSet().range(key, start, end);
}

相关文章