欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Spring Boot项目中使用Redis数据库

程序员文章站 2022-07-03 15:50:24
...

一、下载安装

二、导入依赖

<!-- redis -->
<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

三、配置连接信息

在application.pro中配置数据库连接信息,这里只配置基本信息

# redis数据库配置
 # Redis数据库索引(默认为0)
spring.redis.database=0
 # Redis服务器地址
spring.redis.host=localhost
 # Redis服务器连接端口
spring.redis.port=6379
 # Redis服务器连接密码(默认为空)
spring.redis.password=

四、API学习

使用JUNIT单元测试

1、kv存储
import com.spring.demo.utils.Constants;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.HashOperations;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;

import java.util.HashMap;
import java.util.Map;

@SpringBootTest
class RedisTest {
	@Autowired
	private RedisTemplate redisTemplate;
	@Test
	void stringTest() {
		ValueOperations valueOperations = redisTemplate.opsForValue(); // 获取kv操作对象
		if (!redisTemplate.hasKey("name")) { // 判断key是否存在
			valueOperations.set("name", "Jordan"); // 设定指定key的值
		}
		Assertions.assertEquals("Jordan", valueOperations.get("name")); // 获取指定key值,断言机制判断
	}
2、哈希(Hash)存储
@Test
void hashTest() {
	HashOperations hashOperations = redisTemplate.opsForHash(); // 获取hash操作对象
	if (!hashOperations.hasKey("MySet", "name")) {  // 判断filed是否存在
		hashOperations.put("MySet", "name", "ken");
	}
	Assertions.assertEquals("ken", hashOperations.get("MySet", "name"));
	Map<String, String> map = new HashMap<>(Constants.NumberConstants.INT_THREE);
	map.put("age", "12");
	map.put("job", "java开发工程师");
	map.put("salary", "12000");
	hashOperations.putAll("MySet", map); // hash存储就类似于map,putAll()方法可以将map中kv转存到hash存储字段中
	System.out.println("All keys is " + hashOperations.keys("MySet") + "\rAll values is " + hashOperations.values("MySet")); // [12, ken, 12000, java开发工程师]
	hashOperations.delete("MySet", "job"); // 删除一个或多个字段的值
	System.out.println("All keys is " + hashOperations.keys("MySet") + "\rAll values is " + hashOperations.values("MySet") ); // [12, ken, 12000]
}
3、列表(List)存储
4、集合(set)存储
5、有序集合(sorted set)存储

上一篇: Logback

下一篇: logback