一、Redis和springboot的交互,利用Jackson。
@Autowired
private RedisTemplate redisTemplate;
@Test
public void testSet(){
People peo = new People("xiaoming",22);
redisTemplate.opsForValue().set("peo",peo);
}
@Test
public void testGet(){
redisTemplate.setValueSerializer(new Jackson2JsonRedisSerializer<People>(People.class));
People peo = (People) redisTemplate.opsForValue().get("peo");
System.out.println(peo);
}
@Test
public void testList(){
List<People> list = new ArrayList<>();
list.add(new People("小明",23));
list.add(new People("小红",23));
redisTemplate.opsForValue().set("list",list);
}
@Test
public void testGetList(){
redisTemplate.setValueSerializer(new Jackson2JsonRedisSerializer<List>(List.class));
List<People> list = (List)redisTemplate.opsForValue().get("list");
System.out.println(list);
}
二、Redis的配置文件
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory factory){
RedisTemplate<String,Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(factory);
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new Jackson2JsonRedisSerializer<Object>(Object.class));
return redisTemplate;
}
}
三、Redis的yml文件配置,这里是构建了六个Redis节点的集群
spring:
redis:
cluster:
nodes: 192.168.43.83:7001,192.168.43.83:7002,192.168.43.83:7003,192.168.43.83:7004,192.168.43.83:7005,192.168.43.83:7006
host: 192.168.43.83