Spring Boot整合Redis
- 创建项目,添加依赖,spring-boot-starter-data-redis使用的Redis工具是Lettuce,如果要使用Jedis,可以从spring-boot-starter-data-redis中移除Lettuce并引入Jedis,还要引入Spring Security依赖。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<exclusions>
<exclusion>
<groupId>io.lettuce</groupId>
<artifactId>io.lettuce</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
<version>2.1.13.RELEASE</version>
</dependency>
- 配置Redis连接信息
spring.redis.database=0
spring.redis.host=121.199.12.11
spring.redis.password=1011
spring.redis.jedis.pool.max-active=8
spring.redis.jedis.pool.max-wait=-1ms
spring.redis.jedis.pool.max-idle=8
spring.redis.jedis.pool.min-idle=0
- 创建实例,一定要继承Serializable,否在会报错。
@Data
public class User implements Serializable {
private Long id;
private String username;
private String address;
}
- 测试接口
@Controller
public class UserController {
@Autowired
RedisTemplate redisTemplate;
@Autowired
StringRedisTemplate stringRedisTemplate;
@GetMapping("/test1")
@ResponseBody
public void test1(){
ValueOperations<String, String> ops = stringRedisTemplate.opsForValue();
ops.set("name","三国演义");
String name = ops.get("name");
System.out.println(name);
ValueOperations ops1 = redisTemplate.opsForValue();
User user = new User();
user.setId(1L);
user.setUsername("zs");
user.setAddress("jiangxi");
ops1.set("user",user);
User user1 = (User) ops1.get("user");
System.out.println(user1);
}
}