README.md 3.1 KB
Newer Older
N
Nikita 已提交
1 2 3
Spring Data Redis integration
===

N
Nikita Koksharov 已提交
4
Integrates Redisson with Spring Data Redis library. Implements Spring Data's `RedisConnectionFactory` and `ReactiveRedisConnectionFactory` interfaces, so you could work with Redis through `RedisTemplate` or `ReactiveRedisTemplate` object.
N
Nikita 已提交
5

N
Nikita Koksharov 已提交
6
Supports Spring Data Redis 1.6.x, 1.7.x, 1.8.x, 2.0.x, 2.1.x
N
Nikita 已提交
7

N
Nikita Koksharov 已提交
8 9
<sub>Please consider __[Redisson PRO](https://redisson.pro)__ version for advanced features and support by SLA.</sub>

N
Nikita 已提交
10 11 12
Usage
===

N
Nikita Koksharov 已提交
13
### 1.  Add `redisson-spring-data` dependency into your project:
N
Nikita 已提交
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

1. __For JDK 1.8+__  

     Maven
     ```xml
     <dependency>
         <groupId>org.redisson</groupId>
         <!-- for Spring Data Redis v.1.6.x -->
         <artifactId>redisson-spring-data-16</artifactId>
         <!-- for Spring Data Redis v.1.7.x -->
         <artifactId>redisson-spring-data-17</artifactId>
         <!-- for Spring Data Redis v.1.8.x -->
         <artifactId>redisson-spring-data-18</artifactId>
         <!-- for Spring Data Redis v.2.0.x -->
         <artifactId>redisson-spring-data-20</artifactId>
N
Nikita Koksharov 已提交
29 30
         <!-- for Spring Data Redis v.2.1.x -->
         <artifactId>redisson-spring-data-21</artifactId>
N
Nikita Koksharov 已提交
31
         <version>3.10.2</version>
N
Nikita 已提交
32 33 34 35 36 37
     </dependency>
     ```
     Gradle

     ```java
     // for Spring Data Redis v.1.6.x
N
Nikita Koksharov 已提交
38
     compile 'org.redisson:redisson-spring-data-16:3.10.2'
N
Nikita 已提交
39
     // for Spring Data Redis v.1.7.x
N
Nikita Koksharov 已提交
40
     compile 'org.redisson:redisson-spring-data-17:3.10.2'
N
Nikita 已提交
41
     // for Spring Data Redis v.1.8.x
N
Nikita Koksharov 已提交
42
     compile 'org.redisson:redisson-spring-data-18:3.10.2'
N
Nikita 已提交
43
     // for Spring Data Redis v.2.0.x
N
Nikita Koksharov 已提交
44
     compile 'org.redisson:redisson-spring-data-20:3.10.2'
N
Nikita Koksharov 已提交
45
     // for Spring Data Redis v.2.1.x
N
Nikita Koksharov 已提交
46
     compile 'org.redisson:redisson-spring-data-21:3.10.2'
N
Nikita 已提交
47 48 49 50 51 52 53 54 55 56 57 58 59 60
     ```  

2. __For JDK 1.6+__  

     Maven
     ```xml
     <dependency>
         <groupId>org.redisson</groupId>
         <!-- for Spring Data Redis v.1.6.x -->
         <artifactId>redisson-spring-data-16</artifactId>
         <!-- for Spring Data Redis v.1.7.x -->
         <artifactId>redisson-spring-data-17</artifactId>
         <!-- for Spring Data Redis v.1.8.x -->
         <artifactId>redisson-spring-data-18</artifactId>
N
Nikita Koksharov 已提交
61
         <version>2.15.2</version>
N
Nikita 已提交
62 63 64 65 66 67
     </dependency>
     ```
     Gradle

     ```java
     // for Spring Data Redis v.1.6.x
N
Nikita Koksharov 已提交
68
     compile 'org.redisson:redisson-spring-data-16:2.15.2'
N
Nikita 已提交
69
     // for Spring Data Redis v.1.7.x
N
Nikita Koksharov 已提交
70
     compile 'org.redisson:redisson-spring-data-17:2.15.2'
N
Nikita 已提交
71
     // for Spring Data Redis v.1.8.x
N
Nikita Koksharov 已提交
72
     compile 'org.redisson:redisson-spring-data-18:2.15.2'
N
Nikita 已提交
73 74 75
     ```  


N
Nikita Koksharov 已提交
76
### 2. Register `RedissonConnectionFactory` in Spring context
N
Nikita 已提交
77 78 79 80 81 82 83

```java   
 @Configuration
 public class RedissonSpringDataConfig {
    
    @Bean
    public RedissonConnectionFactory redissonConnectionFactory(RedissonClient redisson) {
N
Nikita Koksharov 已提交
84
        return new RedissonConnectionFactory(redisson);
N
Nikita 已提交
85 86
    }
    
N
Nikita Koksharov 已提交
87
    @Bean(destroyMethod = "shutdown")
N
Nikita Koksharov 已提交
88 89 90
    public RedissonClient redisson(@Value("classpath:/redisson.yaml") Resource configFile) throws IOException {
        Config config = Config.fromYAML(configFile.getInputStream());
        return Redisson.create(config);
N
Nikita 已提交
91
    }
N
Nikita Koksharov 已提交
92
    
N
Nikita 已提交
93 94
 }
```