最近进展,确定是可以写入到redis里。在读的时候报空指针。
写的id和读的id不一致,这个怎么解?
redis配置文件
##Redis数据库索引(默认为0),如果设置为1,那么存入的key-value都存放在select 1中
spring.redis.database=0
## Redis服务器地址
spring.redis.host=123.179.128.196
## Redis服务器连接端口
spring.redis.port=6379
## Redis服务器连接密码(默认为空)
spring.redis.password=123456
##连接池最大连接数(使用负值表示没有限制)
spring.redis.jedis.pool.max-active=40000
##连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.jedis.pool.max-wait=-1ms
## 连接池中的最大空闲连接
spring.redis.jedis.pool.max-idle=8
## 连接池中的最小空闲连接
spring.redis.jedis.pool.min-idle=0
@RequestMapping(value = "/reg",method = RequestMethod.POST)
public Result codeSend(@RequestParam("mobile") String mobiles, HttpSession httpSession) throws Exception {
String smsCode = F.ranDom(5);
httpSession.removeAttribute("codes");
httpSession.setAttribute("codes", smsCode);
System.err.println("读取测试=" + httpSession.getAttribute("codes").toString());
return resultUT.success(LogEnum.LOG_F0);
}
@RequestMapping(value = "/get1")
public String gets(HttpSession session) {
return session.getAttribute("codes").toString();
}
@RequestMapping("/set")
public String index(HttpSession httpSession) {
String smsCode = F.ranDom(5);
httpSession.setAttribute("codes", smsCode);
return "ok";
}
@RequestMapping("/get")
public String hello(HttpSession httpSession) {
return httpSession.getId() + "=" + httpSession.getAttribute("codes").toString();
}
用的redis替代原来的session,这上面4个方法,其中codeSend可以写入,但是用get读取就会报java.lang.NullPointerException,set和get写入和读取session都正常。比较郁闷,问题出在哪里?