<!-- 配置使用redis启动器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
#Redis
spring.redis.host=localhost
spring.redis.port=6379
spring.redis.password=abcd
./redis-cli -p 6379 -a abcd
package com.learn;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringbootQuick2Application {
public static void main(String[] args) {
SpringApplication.run(SpringbootQuick2Application.class, args);
}
}
package com.learn;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.learn.domain.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.ArrayList;
import java.util.List;
@RunWith(SpringRunner.class)
@SpringBootTest(classes = SpringbootQuick2Application.class)
public class RedisTest {
@Autowired
private RedisTemplate<String,String> redisTemplate;
@Test
public void test() throws JsonProcessingException {
// 1、从redis中获得数据 数据的形式json字符串
String userListJson = redisTemplate.boundValueOps("user.findAll").get();
// 2、判断redis中是否存在数据
if(null==userListJson){
// 3、不存在数据 从数据库查询
List<User> all = new ArrayList<User>();
User user = new User();
user.setId(1L);
user.setName("张三");
user.setPassword("123456");
user.setUsername("zhangsan");
all.add(user);
// 4、将查询出的数据存储到redis缓存中
// 先将list集合转换成json格式的字符串 使用jackson进行转换
ObjectMapper objectMapper = new ObjectMapper();
userListJson = objectMapper.writeValueAsString(all);
redisTemplate.boundValueOps("user.findAll").set(userListJson);
System.out.println("=======从数据库中获得user的数据======");
}else{
System.out.println("=======从redis缓存中获得user的数据======");
}
// 4、将数据在控制台打印
System.out.println(userListJson);
}
}
127.0.0.1:6379> get user.findAll
"[{\"id\":1,\"username\":\"zhangsan\",\"password\":\"123456\",\"name\":\"\xe5\xbc\xa0\xe4\xb8\x89\"}]"