springboot+Redis初次使用

springboot(2.1.1.RELEASE)+StringRedisTemplate的简单使用

1.引入pom文件

org.springframework.boot
spring-boot-starter-data-redis


org.springframework.boot
spring-boot-starter-web


commons-lang
commons-lang
2.0

2.配置application.properties文件
# Redis数据库索引(默认为0)
spring.redis.database=0
# Redis服务器地址
spring.redis.host=127.0.0.1
# Redis服务器连接端口
spring.redis.port=6379
# Redis服务器连接密码(默认为空)
spring.redis.password=123456
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=200
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1
# 连接池中的最大空闲连接
spring.redis.pool.max-idle=10
# 连接池中的最小空闲连接
spring.redis.pool.min-idle=0
# 连接超时时间(毫秒)
spring.redis.timeout=1000
ps:修改Redis的密码
springboot+Redis初次使用_第1张图片

3.初步整合Redis

@Service
public class RedisService {

@Autowired
private StringRedisTemplate template;    //引入StringRedisTemplate 模板

public void setString(String key, String value, Long time) {
	this.setObject(key, value, time);
}

public void setString(String key, String value) {
	this.setObject(key, value, null);
}

public void setList(String key, String value, Long time) {
	this.setObject(key, value, time);
}

public void setList(String key, List value) {
	this.setObject(key, value, null);
}

public void setObject(String key, Object value, Long time) {
	// redis数据类型:set,zset,list,hash,string
	if (StringUtils.isEmpty(key) || value == null) {
		return;
	}
	// String 类型
	if (value instanceof String) {
		String strValueString = (String) value;
		template.opsForValue().set(key, strValueString);
		if (time != null) {
			template.opsForValue().set(key, strValueString, time, TimeUnit.SECONDS);
		}
		return;
	}
	// List 类型
	if (value instanceof List) {
		@SuppressWarnings("unchecked")
		List listValue = (List) value;
		for (String string : listValue) {
			template.opsForList().leftPush(key, string);
		}
		return;
	}
	//其他的略……
}
//获取值
public String getStringKey(String key) {
	return template.opsForValue().get(key);
}
//List取值
public List getListKey(String key) {
	return template.opsForList().range(key, 0, -1);
}
}

4.操作数据

@RestController
public class IndexController {
@Autowired
private RedisService service;

@RequestMapping("/setString")
public String setString(String key, String value) {
	service.setString(key, value);
	return "Success";
}

@RequestMapping("/getStringValue")
public String getStringValue(String key) {
	return service.getStringKey(key);
}

@RequestMapping("/setList")
public String setList(String key) {
	List list = new ArrayList();
	list.add("123");
	list.add("nihaoya");
	service.setList(key, list);
	return "Success";
}
@RequestMapping("/getListValue")
public List getListValue(String key) {
	return service.getListKey(key);
}
}

5.查看结果
String类型
springboot+Redis初次使用_第2张图片

List类型
springboot+Redis初次使用_第3张图片
最后查询到的结果
springboot+Redis初次使用_第4张图片

6.Redis Windows版和客户端下载连接
链接:https://pan.baidu.com/s/1xJH8-yfG-QgYcj4o3XTMXQ
提取码:kkt2

你可能感兴趣的:(Java,springboot,Redis)