@@ -86,6 +86,63 @@ public class RedisPluginConfig {
86
86
87
87
```
88
88
89
+ ### 解析 redis_url
90
+
91
+ ```
92
+ REDIS_URL=redis://default:@127.0.0.1:6379
93
+ ```
94
+
95
+ ```
96
+ import com.litongjava.jfinal.aop.annotation.AConfiguration;
97
+ import com.litongjava.jfinal.aop.annotation.AInitialization;
98
+ import com.litongjava.jfinal.plugin.redis.Cache;
99
+ import com.litongjava.jfinal.plugin.redis.Redis;
100
+ import com.litongjava.jfinal.plugin.redis.RedisPlugin;
101
+ import com.litongjava.tio.boot.server.TioBootServer;
102
+ import com.litongjava.tio.utils.dsn.RedisInfo;
103
+ import com.litongjava.tio.utils.dsn.RedisUrlParser;
104
+ import com.litongjava.tio.utils.environment.EnvironmentUtils;
105
+
106
+ import lombok.extern.slf4j.Slf4j;
107
+ import redis.clients.jedis.Jedis;
108
+
109
+ @AConfiguration
110
+ @Slf4j
111
+ public class RedisPluginConfig {
112
+
113
+ @AInitialization
114
+ public void redisPlugin() {
115
+ String redisUrl = EnvironmentUtils.get("REDIS_URL");
116
+ if (redisUrl == null) {
117
+ return;
118
+ }
119
+ RedisInfo redisInfo = new RedisUrlParser().parse(redisUrl);
120
+ int redistimeout = EnvironmentUtils.getInt("redis.timeout", 60);
121
+ int redisDatabase = EnvironmentUtils.getInt("redis.database", 0);
122
+ String cacheName = EnvironmentUtils.get("redis.cacheName", "main");
123
+
124
+ // 创建并启动 Redis 插件
125
+ RedisPlugin mainRedis = new RedisPlugin(cacheName, redisInfo.getHost(), redisInfo.getPort(), redistimeout,
126
+ redisInfo.getPswd(), redisDatabase);
127
+
128
+ mainRedis.start();
129
+
130
+ // 测试连接
131
+ Cache cache = Redis.use(cacheName);
132
+
133
+ Jedis jedis = cache.getJedis();
134
+ try {
135
+ jedis.connect();
136
+ log.info("connect redis successful");
137
+ } catch (Exception e) {
138
+ e.printStackTrace();
139
+ }
140
+
141
+ TioBootServer.me().addDestroyMethod(mainRedis::stop);
142
+ }
143
+ }
144
+ ```
145
+
89
146
### 控制器
90
147
91
148
` RedisTestController ` 包含三个方法,每个方法都演示了如何使用 Redis 进行不同类型的操作。以下是对每个方法的详细解释:
0 commit comments