回顧一下redis搭建環境
pom加入redis配置
<span style="font-size:18px;"> <!-- redis配置 -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>1.4.0.RELEASE</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.6.0</version>
</dependency></span>
redis-config.xml
<bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"></bean>
<bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
p:host-name="${redis.host}"
p:port="${redis.port}"
p:password="${redis.pass}"
p:pool-config-ref="poolConfig" />
<bean id="redisTemplate" class="org.springframework.data.redis.core.StringRedisTemplate">
<property name="connectionFactory" ref="connectionFactory" />
</bean>
網上找的一個redis-service封裝類
package org.gsh.radis;
import java.io.Serializable;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException;
import org.springframework.data.redis.connection.RedisConnection;
import org.springframework.data.redis.core.RedisCallback;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.RedisSerializer;
public abstract class RedisClient<K extends Serializable, V extends Serializable> {
@Autowired
protected RedisTemplate<K,V> redisTemplate ;
/**
* 添加
* @param key
* @param value
* @return
*/
public boolean add(final String key, final String value) {
boolean resultBoolean = false;
if(redisTemplate != null) {
resultBoolean = redisTemplate.execute(new RedisCallback<Boolean>() {
public Boolean doInRedis(RedisConnection connection)
throws DataAccessException {
RedisSerializer<String> serializer = getRedisSerializer();
byte[] keys = serializer.serialize(key);
byte[] values = serializer.serialize(value);
connection.setEx(keys, 120, values);//有效期120s
return true;
//return connection.setNX(keys, values);
}
});
}else{
System.out.println(redisTemplate == null);
}
return resultBoolean;
}
/**
* 根據key獲取對象
*/
public String get(final String key) {
String resultStr = null;
if(redisTemplate != null) {
resultStr = redisTemplate.execute(new RedisCallback<String>() {
public String doInRedis(RedisConnection connection)
throws DataAccessException {
RedisSerializer<String> serializer = getRedisSerializer();
byte[] keys = serializer.serialize(key);
byte[] values = connection.get(keys);
if (values == null) {
return null;
}
String value = serializer.deserialize(values);
return value;
}
});
}
return resultStr;
}
/**
* 設置redisTemplate
* @param redisTemplate the redisTemplate to set
*/
public void setRedisTemplate(RedisTemplate<K, V> redisTemplate) {
this.redisTemplate = redisTemplate;
}
/**
* 獲取 RedisSerializer
* <br>------------------------------<br>
*/
protected RedisSerializer<String> getRedisSerializer() {
return redisTemplate.getStringSerializer();
}
}
大功告成,測試自行腦補吧。