RedisConnection에서 디테일한 부분들을 직접 관리하지 않을 수 있도록 해준 모듈
대부분의 경우 RedisTemplate을 주로 사용
- 다양한 feature set 제공
- 기존 RedisConnection은 low-level methods를 사용해 binary values를 반환하는 반면 RedisTemplate의 경우 다양한 serialization 전략 및 connection management를 수행
RedisTemplate은 thread-safe
- 여러 Threads에서 동시에 사용이 가능
Configure RedisTemplate
@Configuration
class MyConfig {
@Bean
LettuceConnectionFactory connectionFactory() {
return new LettuceConnectionFactory();
}
@Bean
RedisTemplate<String, String> redisTemplate(RedisConnectionFactory connectionFactory) {
RedisTemplate<String, String> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory);
return template;
}
}
Operation view
RedisTemplate은 operations views라는 것을 제공
- 특정 유형이나 특정 키에 대해 공통화된 작업을 제공

Redis Injection 과정에서 Operation View를 바로 할당 받아서 사용할 수 있다.
- 클래스 내부에서 Operation View를 직접 생성하지 않아도 됨
public class Example {
// inject the actual operations
@Autowired
private RedisOperations<String, String> operations;
// inject the template as ListOperations
@Resource(name="redisTemplate")
private ListOperations<String, String> listOps;
public void addLink(String userId, URL url) {
listOps.leftPush(userId, url.toExternalForm());
}
}
'Spring Data Redis(스프링 데이터 레디스)' 카테고리의 다른 글
| Redis Pub/Sub (0) | 2023.12.29 |
|---|---|
| Redis Cache (0) | 2023.12.29 |
| Redis Serializers (1) | 2023.12.29 |
| Redis Connection Modes (0) | 2023.12.29 |
| Redis Drivers (0) | 2023.12.29 |