/**
* LoginController.java
* com.ctb.smart.user.controller
* Copyright (c) 2018, IT版权所有.
* @author IT_BULL
*/
package com.ctb.smart.user.controller;
import java.util.ArrayList;
import java.util.Set;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ZSetOperations;
import org.springframework.data.redis.core.ZSetOperations.TypedTuple;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import com.ctb.msa.common.base.result.ResultMap;
import com.ctb.msa.common.swagger.SwaggerOuter;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
/**
* TODO(这里用一句话描述这个类的作用)
* <p>
* TODO(这里描述这个类补充说明 – 可选)
* @author IT_BULL
* @Date 2018年12月24日
*/
@RestController
@RequestMapping("/login")
@Api(tags = "[/login]", description = "用户信息表")
@SwaggerOuter
@Validated
public class LoginController {
@Autowired
private StringRedisTemplate stringRedisTemplate;
@ApiOperation(value = "登录接口_1.0.0【可对接】")
@SwaggerOuter
@ApiImplicitParams({
})
@RequestMapping(value = "/login", headers = "api-version=1.0.0", method = RequestMethod.GET)
public ResultMap<Object> login(
) {
String key = "user_01";
String dev_id = "huawei_00003";
//获取对象实例
ZSetOperations<String, String> opsForZSet = stringRedisTemplate.opsForZSet();
//添加
// opsForZSet.add(key, dev_id, System.currentTimeMillis());
//如果key一样就进行时间刷新
opsForZSet.add(key, dev_id, 9528);
Set<TypedTuple<String>> reverseRangeWithScores = opsForZSet.reverseRangeWithScores(key, 0, -1);
ArrayList<String> arrayList = new ArrayList<String>();
ArrayList<Double> arrayList2 = new ArrayList<Double>();
for (TypedTuple<String> typedTuple : reverseRangeWithScores) {
String value = typedTuple.getValue();
Double score = typedTuple.getScore();
System.out.println("value---->"+value);
System.out.println("score---->"+score);
arrayList.add(value);
arrayList2.add(score);
}
System.out.println("======>"+arrayList.get(0));
return ResultMap.success(reverseRangeWithScores);
}
}
运行结果:
19:27:41.111 [http-nio-9999-exec-2] INFO org.apache.catalina.core.ContainerBase.[Tomcat].[localhost].[/] - Initializing Spring FrameworkServlet 'dispatcherServlet'
19:27:41.112 [http-nio-9999-exec-2] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'dispatcherServlet': initialization started
19:27:41.126 [http-nio-9999-exec-2] INFO org.springframework.web.servlet.DispatcherServlet - FrameworkServlet 'dispatcherServlet': initialization completed in 14 ms
value---->huawei_00004
score---->1.545649558691E12
value---->huawei_00002
score---->1.545644129584E12
value---->huawei_00001
score---->1.545643703471E12
value---->huawei_00003
score---->9528.0
======>huawei_00004
接口返回值:
{
"errCode": "0",
"errMsg": "OK",
"data": [
{
"score": "1.545649558691E12",
"value": "huawei_00004"
},
{
"score": "1.545644129584E12",
"value": "huawei_00002"
},
{
"score": "1.545643703471E12",
"value": "huawei_00001"
},
{
"score": "9528.0",
"value": "huawei_00003"
}
]
}