一:导入jar包,这里有两个:jedis-2.9.0.jar、commons-pool2-2.4.2.jar
二:写一个工具类,我叫做:RedisTools类。代码如下:
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
public class RedisTools {
private static JedisPool pool;
//创建线程池对象JedisPool , 池中放的是Jedis对象
public static JedisPool open(String host,int port){
if( pool == null){
//创建池
JedisPoolConfig config = new JedisPoolConfig();
//设置最大的线程数,也就是Jedis对象的个数
config.setMaxTotal(100);
//设置空闲数
config.setMaxIdle(2);
//设置检查对象,保证从Pool中获取的Jedis一定是可用的
config.setTestOnBorrow(true);
//创建Pool对象
/**
* poolConfig:配置器
* host:redis的ip
* port: 端口
* timeout:连接Redis的超时,毫秒单位
* password:访问密码
*
*/
pool = new JedisPool(config, host, port, 6000, "123456");
}
return pool;
}
//关闭线程池,释放资源
public static void close(){
if( pool != null){
pool = null;
}
}
}
三、创建一个测试类:RedisString类,代码如下:
import java.util.List;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
public class RedisString {
public static void main(String[] args) {
//访问之前,一定要记得关闭linux的防火墙
//创建Jedis对象,连接到Redis服务器。
/**
* String host: Redis所在的服务器 ip
* int port: Redis的运行端口号
*/
String host = "192.168.188.128";
int port = 6379;
Jedis jedis = null;
JedisPool pool = null;
try{
//创建Pool
pool = RedisTools.open(host, port);
//从Pool中获取Jedis
jedis = pool.getResource();
//调用Jedis的方法
//调用Jedis的方法,操作Redis数据
jedis.set("break", "豆浆和油条111");
//获取数据 get()
String value = jedis.get("break");
System.out.println("break的值:"+value);
//设置多个key-value
jedis.mset("lunch","饺子111","dinner","小米粥和包子111");
//获取多个key的值
List<String> values = jedis.mget("break","lunch","dinner");
for(String val : values){
System.out.println(val);
}
}finally{
//关闭Jedis对象, 把Jedis放回到线程池
if( jedis != null){
jedis.close();
}
}
}
}