封装redis基本操作
public boolean set(final String key, Object value){
boolean result = false;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
ops.set(key, value);
result = true;
}catch (Exception e){
System.out.println("写入redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* 写入Redis缓存(设置expire存活时间)
* @param key
* @param value
* @param expire
* @return
*/
public boolean set(final String key, Object value, Long expire){
boolean result = false;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
ops.set(key, value);
redisTemplate.expire(key, expire, TimeUnit.SECONDS);
result = true;
}catch (Exception e){
System.out.println("写入redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
public Object get(final String key){
Object result = null;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
result = ops.get(key);
}catch (Exception e){
System.out.println("读取redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
public boolean exists(final String key){
boolean result = false;
try {
result = redisTemplate.hasKey(key);
}catch (Exception e){
System.out.println("判断redis缓存中是否有对应的key失败!错误信息为:" + e.getMessage());
}
return result;
}
public boolean remove(final String key){
boolean result = false;
try {
if (exists(key)){
redisTemplate.delete(key);
}
result = true;
}catch (Exception e){
System.out.println("redis根据key删除对应的value失败!错误信息为:" + e.getMessage());
}
return result;
}
public void remove(final String... keys){
for (String key : keys) {
remove(key);
}
}
package mybatis_plus.service;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service;
import java.util.concurrent.TimeUnit;
@Service
public class RedisService {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
/**
* 写入Redis缓存(不设置expire存活时间)
* @param key
* @param value
* @return
*/
public boolean set(final String key, Object value){
boolean result = false;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
ops.set(key, value);
result = true;
}catch (Exception e){
System.out.println("写入redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* 写入Redis缓存(设置expire存活时间)
* @param key
* @param value
* @param expire
* @return
*/
public boolean set(final String key, Object value, Long expire){
boolean result = false;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
ops.set(key, value);
redisTemplate.expire(key, expire, TimeUnit.SECONDS);
result = true;
}catch (Exception e){
System.out.println("写入redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* 读取redis缓存
* @param key
* @return
*/
public Object get(final String key){
Object result = null;
try {
ValueOperations<String, Object> ops = redisTemplate.opsForValue();
result = ops.get(key);
}catch (Exception e){
System.out.println("读取redis缓存失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* 判断redis缓存中是否有对应的key
* @param key
* @return
*/
public boolean exists(final String key){
boolean result = false;
try {
result = redisTemplate.hasKey(key);
}catch (Exception e){
System.out.println("判断redis缓存中是否有对应的key失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* redis根据key删除对应的value
* @param key
* @return
*/
public boolean remove(final String key){
boolean result = false;
try {
if (exists(key)){
redisTemplate.delete(key);
}
result = true;
}catch (Exception e){
System.out.println("redis根据key删除对应的value失败!错误信息为:" + e.getMessage());
}
return result;
}
/**
* redis根据keys批量删除对应的value
* @param keys
*/
public void remove(final String... keys){
for (String key : keys) {
remove(key);
}
}
}
对封装的redis服务进行测试
@Test
void testRedisServiceSet(){
User user = userMapper.selectById(1l);
boolean list1 = redisService.set("1", user);
System.out.println(list1);
// list.forEach(System.out::print);
}
@Test
void testRedisServiceGet(){
// User user = userMapper.selectById(1l);
User user = (User) redisService.get("1");
System.out.println(user);
// list.forEach(System.out::print);
}
@Test
void testRedisServiceSet(){
User user = userMapper.selectById(1l);
boolean list1 = redisService.set("1", user,1l);
System.out.println(list1);
// list.forEach(System.out::print);
}
@Test
void testRedisServiceExists(){
boolean user = redisService.exists("user");
System.out.println("user 存在"+user);
boolean re = redisService.exists("2");
System.out.println("2 存在"+re);
}
@Test
void testRedisServiceRemove(){
// User user = userMapper.selectById(1l);
boolean re = redisService.remove("user1");
System.out.println("remove"+re);
// list.forEach(System.out::print);
}
@Test
void testRedisServiceRemoveMany(){
redisService.remove("user2","user3");
}