Redis的计时以及一人一锁java实现代码

Redis的计时以及一人一锁java实现代码

 

 @Override
    public void editBeginTime(String newsId, Integer userId) throws ApiException {
        String editBeginTimeKey = "TBMNEWSPROCESSING:1:NEWS_ID" + newsId;
        cacheService.cleanBucket(editBeginTimeKey);
        String editDateTime = DateUtil.getSysDateToString();
        cacheService.setBucket(editBeginTimeKey, editDateTime);
        //设置公开开始编辑时间过期时间
        RBucket bucket = cacheService.getBucket(editBeginTimeKey);
        String timeValue = bucket.get();
        if (null != timeValue) {
            bucket.set(timeValue, SysConfig.NEWS_START_PROCESS_TIME_REDIS_TIME_OUT, TimeUnit.MILLISECONDS);
        }
    }

    @Override
    public void checkBeforeLock(String newsId, Integer userId) throws ApiException {
        //锁住判断用户id下面是否有newsid,有的话newsid所有的锁要释放。
        String checkBeforeLockKey = "CHECKBEFORELOCK:1:USERID" + userId;
        RBucket bucket = cacheService.g

你可能感兴趣的:(Redis,JavaWeb)