-
Redis(레디스) | Spring Boot 프로젝트 연동하기▼ DataBase, NoSQL/Redis 2021. 11. 25. 11:45반응형
[DB, NoSQL] - Windows 10 | 레디스(Redis) 설치 및 명령어
[DB, NoSQL] - Windows 10 | 레디스(Redis) 비밀번호 설정
📌 구성환경
SpringBoot 2.5.6, Redis 3.2.100
build.gradle
implementation 'org.springframework.boot:spring-boot-starter-data-redis'
application.yml (properties)
spring: redis: lettuce: pool: max-active: 5 #pool에 할당될 수 있는 커넥션 최대수 (음수로 하면 무제한) max-idle: 5 #pool의 "idle" 커넥션 최대수 (음수로 하면 무제한) min-idle: 2 #풀에서 관리하는 idle 커넥션의 최소 수 대상 host: 127.0.0.1 port: 6379 password: redisPass
Configuration (RedisConfig.java)
레디스(Redis) 연결을 위한 ConnectionFactory 설정과 실제 사용을 위한 Template을 구성한다.
package com.artmoa.member.config; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.connection.RedisStandaloneConfiguration; import org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfig { @Value("${spring.redis.host}") private String host; @Value("${spring.redis.port}") private int port; @Value("${spring.redis.password}") private String password; @Bean public RedisConnectionFactory redisConnectionFactory() { RedisStandaloneConfiguration redisStandaloneConfiguration = new RedisStandaloneConfiguration(); redisStandaloneConfiguration.setHostName(host); redisStandaloneConfiguration.setPort(port); redisStandaloneConfiguration.setPassword(password); return new LettuceConnectionFactory(redisStandaloneConfiguration); } @Bean public RedisTemplate<String, Object> redisTemplate() { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(redisConnectionFactory()); redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setValueSerializer(new StringRedisSerializer()); return redisTemplate; } }
Util Class (redisUtil.java)
데이터 생성, 조회 테스트를 위한 메서드를 생성한다.
데이터 생성 시 만료 시간을 설정할 수 있으며 시간이 만료될 경우 자동으로 소멸된다.import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.ValueOperations; public class redisUtil { @Autowired private RedisTemplate redisTemplate; public void redisSetTest() { // Redis Template ValueOperations<String, String> vop = redisTemplate.opsForValue(); // Redis Set Key-Value vop.set("key1", "data1"); // 만료제한 없이 생성 vop.set("key-expire", "data-expire", Duration.ofSeconds(60)); // 60초 뒤에 해당 키가 만료되어 소멸된다. } public void redisGetTest() { // Redis Template ValueOperations<String, String> vop = redisTemplate.opsForValue(); String redisValue = vop.get("key1"); String redisExpireValue = vop.get("key-expire"); } }
redis-cli.exe
등록한 데이터를 redis-cli에서도 확인할 수 있다.
ttl [key] 명령어를 통해 남은 만료 시간을 확인할 수 있다.반응형'▼ DataBase, NoSQL > Redis' 카테고리의 다른 글
Redis(레디스) | 비트맵(Bitmap) 사용하기 (0) 2022.04.12 Redis(레디스) | Windows 10 비밀번호 설정 (0) 2021.11.24 Redis(레디스) | Windows 10 설치 및 기본 명령어 (0) 2021.11.24