转自: http://blog.csdn.net/mid120/article/details/52799007
1.导入jedis依赖
<dependency>
<groupId>Redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.6.0</version>
</dependency>
2 总共有三种链接方式
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
/* 直接连接 */
public static void main(String[] args) {
// 构造jedis对象
Jedis jedis = new Jedis("10.88.68.147", 8000);
jedis.auth("123");
// 向redis中添加数据
jedis.set("mytest", "123");
// 从redis中读取数据
String value = jedis.get("mytest");
System.out.println(value);
// 关闭连接
jedis.close();
}
/* 使用链接池连接 */
public static void main(String[] args) {
// 构建连接池配置信息
JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
// 设置最大连接数
jedisPoolConfig.setMaxTotal(50);
// 构建连接池
JedisPool jedisPool = new JedisPool(jedisPoolConfig, "10.88.68.147", 8000);
// 从连接池中获取连接
Jedis jedis = jedisPool.getResource();
jedis.auth("123");
// 读取数据
System.out.println(jedis.get("mytest"));
// 将连接还回到连接池中
jedisPool.returnResource(jedis);
// 释放连接池
jedisPool.close();
}
/* 使用集群方式连接 */
public static void main(String[] args) {
// 构建连接池配置信息
JedisPoolConfig poolConfig = new JedisPoolConfig();
// 设置最大连接数
poolConfig.setMaxTotal(50);
// 定义集群信息
List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
JedisShardInfo shardInfo = new JedisShardInfo("10.88.68.147", 8000);
shardInfo.setPassword("123");
shards.add(shardInfo);
// 定义集群连接池
ShardedJedisPool shardedJedisPool = new ShardedJedisPool(poolConfig, shards);
ShardedJedis shardedJedis = null;
try {
// 从连接池中获取到jedis分片对象
shardedJedis = shardedJedisPool.getResource();
// 从redis中获取数据
String value = shardedJedis.get("mytest");
System.out.println(value);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (null != shardedJedis) {
// 关闭,检测连接是否有效,有效则放回到连接池中,无效则重置状态
shardedJedis.close();
}
}
// 关闭连接池
shardedJedisPool.close();
}
|
异常解决 思路
1.Vmware里面的Linux所安装的redis已经正常启动
2.在windows用ssh客户端链接linux可以操作redis
3 .linux防火墙已经关闭
4.拼linux的ip也能拼通
5,检查配置,将bind注释掉
6.redis目前处于受保护模式,不允许非本地客户端链接,我们可以通过给redis设置密码,然后客户端链接的时候,写上密码就可以解决了
配置redis的命令
config set requirepass 123 ->123是密码
这样连接就ok了