Redis开发文档(Java)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
// private final static int PORT = 6379;
// 密码
private final static String AUTH = "123456";
// 可用连接实例的最大数目,默认值为8 // 如果赋值为-1,则表示不限制;如果pool已经分配了maxTotal个Jedis实例 // 则此时pool的状态为exhausted(耗尽)
3. Build -> Build Artifacts
1-4
4. 编译打包完成
1-5
导入 Jedis
导入 Jedis
1. 新建项目,导入 Jedis.jar
选择 1.
File -> Project Structure -> Libraries
点击 找到 并导入 2.
+ -> Java ,
Jedis.jar
2-1
使用 Jedis
使用 Jedis
简单地使用Jedis
import redis.clients.jedis.Jedis;
public class JedisDemo {
private static Jedis jedis;
public static void main(String[] args) {
setup();
//
jedis = JedisPoolDemo.getJedis();
StringsDemo();
//
JedisPoolDemo.returnResource(jedis);
}
private static void setup() {
// 连接Redis服务器
jedis = new Jedis("localhost", 6379);
}
// 获取Jedis实例
public synchronized static Jedis getJedis(){ try { if (jedisPool != null) { return jedisPool.getResource(); } else { return null; } } catch (Exception e) { e.printStackTrace(); return null; }
private final static int MAX_TOTAL = 1024;
// 控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值8。
private final static int MAX_IDLE = 200;
// 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。 // 如果超过等待时间,则直接抛出JedisConnectionException;
import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig;
public class JedisPoolDemo {
// 服务器地址 端口号 private final static String ADDR = "localhost";
// 认证
jedis.auth("123456");
}
private static void StringsDemo() { System.out.println(jedis.get("first")); //null System.out.println(jedis.set("second","2222")); //OK System.out.println(jedis.get("second")); //2222
private final static int MAX_WAIT = 10000;
// 超时时间
private final static int TIMEOUT = 10000;
// 在borrow一个jedis实例时,是否提前进行validate操作 // 如果为true,则得到的jedis实例均是可用的;
Redis开发文档(Java)
Redis开发文档(Java) 下载编译 Jedis 导入 Jedis 使用 Jedis
下载编译 Jedis
Redis 官网列出了许多客户端工具,基本涵盖了所有流行的开发语言。这里我们选择了供Java开发 的 。 Jedis 首先下载 并解压 jedis-jedis-2.9.0.tar.gz 接着使用 IntelliJ IDEA 编译打包 :
cluster = new JedisCluster(nodes);
}
public static void main(String[] args) { setup(); cluster.set("111","222");//OK
}
}
import java.util.*;
public class ClusterDemo {
private static JedisCluster cluster;
private final static String ADDR = "localhost";
public static void setup(){ Set<HostAndPort> nodes = new HashSet<>(); nodes.add(new HostAndPort(ADDR, 7000)); nodes.add(new HostAndPort(ADDR, 7001)); nodes.add(new HostAndPort(ADDR, 7002)); nodes.add(new HostAndPort(ADDR, 7003)); nodes.add(new HostAndPort(ADDR, 7004)); nodes.add(new HostAndPort(ADDR, 7005));
private final static boolean TEST_ON_BORROW = true;
// 连接池
private static JedisPool jedisPool = null;
// 初始化连接池
static{ try { JedisPoolConfig config = new JedisPoolConfig(); config.setMaxTotal(MAX_TOTAL); config.setMaxIdle(MAX_IDLE); config.setMaxWaitMillis(MAX_WAIT); config.setTestOnBorrow(TEST_ON_BORROW); jedisPool = new JedisPool(config,ADDR,PORT,TIMEOUT,AUTH); } catch (Exception e) { e.printStackTrace(); }
} }
使用连接池 对于共享资源,有一个很著名的设计模式:对象池(Object Pool)。该模式正是为了解决资源的频 繁分配﹑释放所造成的问题。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先 在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完 毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要 的是我们可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性 能调整提供依据。
}
释放 //
Jedis
public static void returnResource(Jedis jedis) {
if (jedis != null) jedisPool.returnResource(jedis);
}
}
Redis 集群连接
import redis.clients.jedis.*;
在 中打开 项目 1. IntelliJ IDEA
Jedis
选择 2.
File -> Project Structure -> Artifacts
wk.baidu.com
点击 1.
+ -> JAR-> From modules with dependencies
1-1
2. OK -> Apply -> OK
1-2 1-3
// 密码
private final static String AUTH = "123456";
// 可用连接实例的最大数目,默认值为8 // 如果赋值为-1,则表示不限制;如果pool已经分配了maxTotal个Jedis实例 // 则此时pool的状态为exhausted(耗尽)
3. Build -> Build Artifacts
1-4
4. 编译打包完成
1-5
导入 Jedis
导入 Jedis
1. 新建项目,导入 Jedis.jar
选择 1.
File -> Project Structure -> Libraries
点击 找到 并导入 2.
+ -> Java ,
Jedis.jar
2-1
使用 Jedis
使用 Jedis
简单地使用Jedis
import redis.clients.jedis.Jedis;
public class JedisDemo {
private static Jedis jedis;
public static void main(String[] args) {
setup();
//
jedis = JedisPoolDemo.getJedis();
StringsDemo();
//
JedisPoolDemo.returnResource(jedis);
}
private static void setup() {
// 连接Redis服务器
jedis = new Jedis("localhost", 6379);
}
// 获取Jedis实例
public synchronized static Jedis getJedis(){ try { if (jedisPool != null) { return jedisPool.getResource(); } else { return null; } } catch (Exception e) { e.printStackTrace(); return null; }
private final static int MAX_TOTAL = 1024;
// 控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值8。
private final static int MAX_IDLE = 200;
// 等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。 // 如果超过等待时间,则直接抛出JedisConnectionException;
import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig;
public class JedisPoolDemo {
// 服务器地址 端口号 private final static String ADDR = "localhost";
// 认证
jedis.auth("123456");
}
private static void StringsDemo() { System.out.println(jedis.get("first")); //null System.out.println(jedis.set("second","2222")); //OK System.out.println(jedis.get("second")); //2222
private final static int MAX_WAIT = 10000;
// 超时时间
private final static int TIMEOUT = 10000;
// 在borrow一个jedis实例时,是否提前进行validate操作 // 如果为true,则得到的jedis实例均是可用的;
Redis开发文档(Java)
Redis开发文档(Java) 下载编译 Jedis 导入 Jedis 使用 Jedis
下载编译 Jedis
Redis 官网列出了许多客户端工具,基本涵盖了所有流行的开发语言。这里我们选择了供Java开发 的 。 Jedis 首先下载 并解压 jedis-jedis-2.9.0.tar.gz 接着使用 IntelliJ IDEA 编译打包 :
cluster = new JedisCluster(nodes);
}
public static void main(String[] args) { setup(); cluster.set("111","222");//OK
}
}
import java.util.*;
public class ClusterDemo {
private static JedisCluster cluster;
private final static String ADDR = "localhost";
public static void setup(){ Set<HostAndPort> nodes = new HashSet<>(); nodes.add(new HostAndPort(ADDR, 7000)); nodes.add(new HostAndPort(ADDR, 7001)); nodes.add(new HostAndPort(ADDR, 7002)); nodes.add(new HostAndPort(ADDR, 7003)); nodes.add(new HostAndPort(ADDR, 7004)); nodes.add(new HostAndPort(ADDR, 7005));
private final static boolean TEST_ON_BORROW = true;
// 连接池
private static JedisPool jedisPool = null;
// 初始化连接池
static{ try { JedisPoolConfig config = new JedisPoolConfig(); config.setMaxTotal(MAX_TOTAL); config.setMaxIdle(MAX_IDLE); config.setMaxWaitMillis(MAX_WAIT); config.setTestOnBorrow(TEST_ON_BORROW); jedisPool = new JedisPool(config,ADDR,PORT,TIMEOUT,AUTH); } catch (Exception e) { e.printStackTrace(); }
} }
使用连接池 对于共享资源,有一个很著名的设计模式:对象池(Object Pool)。该模式正是为了解决资源的频 繁分配﹑释放所造成的问题。数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。预先 在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完 毕之后再放回去。我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接。更为重要 的是我们可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性 能调整提供依据。
}
释放 //
Jedis
public static void returnResource(Jedis jedis) {
if (jedis != null) jedisPool.returnResource(jedis);
}
}
Redis 集群连接
import redis.clients.jedis.*;
在 中打开 项目 1. IntelliJ IDEA
Jedis
选择 2.
File -> Project Structure -> Artifacts
wk.baidu.com
点击 1.
+ -> JAR-> From modules with dependencies
1-1
2. OK -> Apply -> OK
1-2 1-3