前几天,在做JFinal项目的时候,把以前用ssm框架写的小程序登录判断session是否过期的登录demo整合到JFinal这个项目中了,因为没有用 stringRedisTemplate,所以需要用到redis插件, 但是用redis插件后, 还是报错提示没有,最后又在网上百度了一下,找到了这个不需要 配置插件,就可以用redis的。下面把代码写出来
public Jedis getRedis() { JedisPool jedisPool = getJedisPool(); Jedis jedis = jedisPool.getResource(); return jedis ; } /** * */ public JedisPool getJedisPool() { JedisPoolConfig poolConfig = new JedisPoolConfig(); // 控制一个pool最多有多少个 jedis实例。 poolConfig.setMaxTotal(1000); // 控制一个pool最多有多少个状态为idle(空闲的)的 jedis实例。 poolConfig.setMaxIdle(10); // 表示当borrow(引入)一个 jedis实例时,最大的等待时间,如果超过等待时间,则直接抛出JedisConnectionException; poolConfig.setMaxWaitMillis(200000); // 在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的 jedis实例均是可用的; poolConfig.setTestOnBorrow(true); return new JedisPool(poolConfig, "localhost", 6379); }
然后再调用的时候,直接就可以用咯:
Jedis jedis=getRedis(); jedis.set(Third_session,sessionKey+openid); jedis.expire(Third_session,86400);//设置过期时间
Jedis jedis=getRedis(); boolean flag=jedis.exists(thirdSession_Key);//判断是否有这个key System.out.println(new Date() + "得到session:" + flag);
long beforeTime= jedis.ttl(thirdSession_Key); System.out.println("有效时间:======"+beforeTime+"S===========");
这样的好处,无需再配置其他。可以直接使用哦!
先从改造轮子做起。。。