写一个redis用sadd存储List<String>的代码
时间: 2024-05-30 15:14:20 浏览: 18
当然,我可以帮您写Redis使用SADD存储List<String>的代码。您可以参考下面这段Java代码:
Jedis jedis = new Jedis("localhost");
List<String> list = new ArrayList<>();
list.add("hello");
list.add("world");
for (String str : list) {
jedis.sadd("myset", str);
}
这里使用了Jedis客户端库连接Redis,sadd命令将list中的元素添加到Redis中的myset集合中。希望这能够帮到您,有其他问题也可以随时问我哦!
相关问题
写一个java版本的redis各种数据类型的工具类
好的,以下是一个基于Java的Redis各种数据类型的工具类示例:
```java
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class RedisUtil {
private static JedisPool jedisPool = null;
static {
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxTotal(100);
jedisPoolConfig.setMaxIdle(20);
jedisPoolConfig.setTestOnBorrow(true);
jedisPool = new JedisPool(jedisPoolConfig, "localhost", 6379);
}
public static Jedis getJedis() {
return jedisPool.getResource();
}
public static void returnJedis(Jedis jedis) {
jedisPool.returnResource(jedis);
}
/**
* String类型
*/
public static void set(String key, String value) {
Jedis jedis = null;
try {
jedis = getJedis();
jedis.set(key, value);
} catch (Exception e) {
e.printStackTrace();
} finally {
returnJedis(jedis);
}
}
public static String get(String key) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.get(key);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
/**
* List类型
*/
public static void lpush(String key, String... values) {
Jedis jedis = null;
try {
jedis = getJedis();
jedis.lpush(key, values);
} catch (Exception e) {
e.printStackTrace();
} finally {
returnJedis(jedis);
}
}
public static List<String> lrange(String key, long start, long end) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.lrange(key, start, end);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
/**
* Set类型
*/
public static void sadd(String key, String... members) {
Jedis jedis = null;
try {
jedis = getJedis();
jedis.sadd(key, members);
} catch (Exception e) {
e.printStackTrace();
} finally {
returnJedis(jedis);
}
}
public static Set<String> smembers(String key) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.smembers(key);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
/**
* Hash类型
*/
public static void hset(String key, String field, String value) {
Jedis jedis = null;
try {
jedis = getJedis();
jedis.hset(key, field, value);
} catch (Exception e) {
e.printStackTrace();
} finally {
returnJedis(jedis);
}
}
public static String hget(String key, String field) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.hget(key, field);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
public static Map<String, String> hgetAll(String key) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.hgetAll(key);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
/**
* Zset类型
*/
public static void zadd(String key, double score, String member) {
Jedis jedis = null;
try {
jedis = getJedis();
jedis.zadd(key, score, member);
} catch (Exception e) {
e.printStackTrace();
} finally {
returnJedis(jedis);
}
}
public static Set<String> zrange(String key, long start, long end) {
Jedis jedis = null;
try {
jedis = getJedis();
return jedis.zrange(key, start, end);
} catch (Exception e) {
e.printStackTrace();
return null;
} finally {
returnJedis(jedis);
}
}
}
```
这个工具类中包含了如何初始化Jedis连接池、获取、释放Jedis连接以及常用的String、List、Set、Hash、Zset数据类型的操作。您可以在使用该工具类时,根据需要进行调整和扩展。
将Redis 中的一个很长的字符串类型改为set类型存储java
要将 Redis 中的一个很长的字符串类型改为 set 类型存储,需要将字符串按照一定规则拆分成多个元素,然后使用 Redis 的命令 SADD 将这些元素添加到 set 中。在 Java 中使用 Jedis 操作 Redis,可以按照以下代码示例进行操作:
```
// 创建 Jedis 对象,连接 Redis
Jedis jedis = new Jedis("localhost", 6379);
// 假设原来的字符串为 "abcdefghijk"
String str = "abcdefghijk";
// 将字符串按照长度为 3 的规则拆分成多个元素
List<String> list = new ArrayList<>();
for (int i = 0; i < str.length(); i += 3) {
int endIndex = Math.min(i + 3, str.length());
list.add(str.substring(i, endIndex));
}
// 将拆分后的元素添加到 set 中
jedis.sadd("myset", list.toArray(new String[0]));
// 删除原来的字符串
jedis.del("mystring");
// 关闭连接
jedis.close();
```
上述代码将字符串 "abcdefghijk" 按照长度为 3 的规则拆分成了多个元素,并将这些元素添加到名为 "myset" 的 set 中。然后删除原来的字符串 "mystring"。在实际应用中,拆分字符串的规则可以根据实际情况进行调整。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)