Java访问Redis

时间:2024-07-27 15:34:26

Redis的数据类型总共有如下几种

1.String(字符串)

2.List(列表),字符串列表,有序

3.Hash(哈希),可以存储类似于数据库的表结构

4.Set(集合),无序,不可重复

5.ZSet(有序集合),有序、不可重复

Java 操作Redis,首先引入pom.xml

<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.7.0</version>
</dependency>

方案一、没有连接池

/**
* 不使用连接池
* @param args
*/
public static void main(String[] args) {
String key = "name";
String value = "zhangsan";
Jedis jedis = new Jedis("172.23.88.107", 6379);
if (jedis.exists(key)) {
System.out.println("key:" + key + " 已存在."); jedis.del(key);
System.out.println("key:" + key + " 删除成功.");
} jedis.set(key, value);
System.out.println("key:" + key + ",value:" + value + " 设置成功.");
}

方案二、使用连接池

/**
* 使用连接池
* @param args
*/
public static void main(String[] args) {
JedisPoolConfig config = new JedisPoolConfig();
config.setMaxTotal(20);
config.setMaxIdle(5);
config.setMaxWaitMillis(100);
config.setTestOnBorrow(true); JedisPool pool = new JedisPool(config, "172.23.88.107", 6379);
Jedis jedis = null;
try {
jedis = pool.getResource();
jedis.select(1);// 切换数据库,redis总共有0-15共计16个数据库
String key = "name";
String value = "zhangsan";
if (jedis.exists(key)) {
System.out.println("key:" + key + " 已存在."); jedis.del(key);
System.out.println("key:" + key + " 删除成功.");
} jedis.set(key, value);
System.out.println("key:" + key + ",value:" + value + " 设置成功.");
} finally {
if (jedis != null)
jedis.close();
}
}

具体的命令可以参考其它的文档。