spring框架怎么使用redis

时间:2022-12-06 01:09

spring框架怎么使用redis

"spring框架使用redis的方法:

1.在pom.xml中导入redis的相关依赖,例如:

<dependency>

<groupId>redis.clients</groupId>

<artifactId>jedis</artifactId>

<version>2.1.0</version>

</dependency>

2.在applicationContext.xml中添加redis相关配置,例如:

<!--redis配置开始-->

<beanid=""jedisPoolConfig""class=""redis.clients.jedis.JedisPoolConfig"">

<propertyname=""maxActive""value=""300""/>

<propertyname=""maxIdle""value=""100""/>

<propertyname=""maxWait""value=""1000""/>

<propertyname=""testOnBorrow""value=""true""/>

</bean>

<!--ConfigpoolConfig,Stringhost,intport,inttimeout,Stringpassword,intdatabase-->

<beanid=""jedisPool""class=""redis.clients.jedis.JedisPool""destroy-method=""destroy"">

<constructor-argref=""jedisPoolConfig""/>

<constructor-argvalue=""127.0.0.1""/>

<constructor-argvalue=""6379""/>

<constructor-argvalue=""3000""/>

<constructor-argvalue=""123456""/>

<constructor-argvalue=""0""/>

</bean>

<beanid=""redisAPI""class=""com.xc.util.RedisAPI"">

<propertyname=""jedisPool""ref=""jedisPool""/>

</bean>

3.最后创建redis的工具类即可。代码如下:

publicclassRedisAPI{

publicstaticJedisPooljedisPool;

publicJedisPoolgetJedisPool(){

returnjedisPool;

}

publicvoidsetJedisPool(JedisPooljedisPool){

RedisAPI.jedisPool=jedisPool;

}

/**

*setkeyandvaluetoredis

*@paramkey

*@paramvalue

*@return

*/

publicstaticbooleanset(Stringkey,Stringvalue){

try{

Jedisjedis=jedisPool.getResource();

jedis.set(key,value);

returntrue;

}catch(Exceptione){

e.printStackTrace();

}

returnfalse;

}

/**

*setkeyandvaluetoredis

*@paramkey

*@paramseconds有效期

*@paramvalue

*@return

*/

publicstaticbooleanset(Stringkey,intseconds,Stringvalue){

try{

Jedisjedis=jedisPool.getResource();

jedis.setex(key,seconds,value);

returntrue;

}catch(Exceptione){

e.printStackTrace();

}

returnfalse;

}

/**

*判断某个key是否存在

*@paramkey

*@return

*/

publicbooleanexist(Stringkey){

try{

Jedisjedis=jedisPool.getResource();

returnjedis.exists(key);

}catch(Exceptione){

e.printStackTrace();

}

returnfalse;

}

/**

*返还到连接池

*@parampool

*@paramredis

*/

publicstaticvoidreturnResource(JedisPoolpool,Jedisredis){

if(redis!=null){

pool.returnResource(redis);

}

}

/**

*获取数据

*@paramkey

*@return

*/

publicStringget(Stringkey){

Stringvalue=null;

Jedisjedis=null;

try{

jedis=jedisPool.getResource();

value=jedis.get(key);

}catch(Exceptione){

e.printStackTrace();

}finally{

//返还到连接池

returnResource(jedisPool,jedis);

}

returnvalue;

}

/**

*查询key的有效期,当key不存在时,返回-2。当key存在但没有设置剩余生存时间时,返回-1。否则,以秒为单位,返回key的剩余生存时间。

*注意:在Redis2.8以前,当key不存在,或者key没有设置剩余生存时间时,命令都返回-1。

*@paramkey

*@return剩余多少秒

*/

publicLongttl(Stringkey){

try{

Jedisjedis=jedisPool.getResource();

returnjedis.ttl(key);

}catch(Exceptione){

e.printStackTrace();

}

return(long)-2;

}

/**

*删除

*@paramkey

*/

publicvoiddelete(Stringkey){

try{

Jedisjedis=jedisPool.getResource();

jedis.del(key);

}catch(Exceptione){

e.printStackTrace();

}

}

}

标签:
随便看看
本类推荐
本类排行
热门标签

我国国家通讯社行不行啊细狗新年贺词祝福语2023年祝福语新年新年贺词新年贺词祝福语居家抗病毒小药箱除夕高速免费吗2022年除夕高速免费吗春联春联句子大全春联句子大全七字年夜饭十二道菜年夜饭十二道菜单年夜饭吃什么年夜饭吃什么菜吃年夜饭的寓意年夜饭黑芝麻菊花茶晒菊花茶腌腊肉送妈妈生日礼物汉白玉送闺蜜水钻送女人礼物爸爸生日送礼物送老公