IDEA配置Redis及简单运用
- 前提:已安装Redis,导入jedis.jar,commons-pool2.jar
- 配置连接池RedisUtils.java
- RedisJDBCTest.java
- jedis.properties
前提:已安装Redis,导入jedis.jar,commons-pool2.jar
redis.clients
jedis
2.8.0
org.apache.commons
commons-pool2
2.4.2
配置连接池RedisUtils.java
public class RedisUtils {
private static JedisPool jedisPool;
static {
//创建properties文件
Properties properties = new Properties();
//读取配置文件
InputStream is= RedisUtils.class.getResourceAsStream("jedis.properties");
//加载配置文件
try {
properties.load(is);
}catch (IOException e){
e.printStackTrace();
}
//System.out.println(properties.getProperty("host"));
//创建连接池对象
JedisPoolConfig config = new JedisPoolConfig();
//最大允许连接数
config.setMaxTotal(Integer.parseInt(properties.getProperty("maxTotal")));
//最大空闲连接数
config.setMaxIdle(Integer.parseInt(properties.getProperty("maxIdle")));
//创建jedisPool连接池对象 timeout客户端超时时间
jedisPool = new JedisPool(config,properties.getProperty("host"),Integer.parseInt(properties.getProperty("port")),3000,properties.getProperty("password"));
}
//返回数据连接池
public static JedisPool jedisPool(){
return jedisPool;
}
//返回Jedis连接
public static Jedis getJedis(){
return jedisPool.getResource();
}
//关闭资源
public static void getClose(Jedis jedis){
if(jedis!=null){
jedis.close();
}
}
public static void getClose(JedisPool jedisPool){
if(jedisPool!=null){
jedisPool.close();
}
}
}
RedisJDBCTest.java
public class RedisJDBCTest {
public static void main(String[] args) {
//建立一个连接
Jedis jedis = RedisUtils.getJedis();
//操作list
for (int i=1;i<6;i++){
jedis.rpush("sum",i+"");//右边开始添加
//jedis.lpush()//左边开始添加
}
jedis.lpop("sum");//删除并返回左边第一个元素
jedis.rpop("sum");//删除并返回右边第一个元素
jedis.lrem("sum",0,"2");//count=0删除全部value为2,count>0从头开始删除value=2数量为count,count<0从尾开始开始删除value=2数量为count
System.out.println(jedis.lrange("sum",0,5));//取第1~6值
System.out.println(jedis.llen("sum"));//长度
// set
jedis.sadd("person","学生");
jedis.sadd("person","艺术","美术");
System.out.println(jedis.smembers("person"));
//hash
jedis.hset("hash","k1","v1");
jedis.hset("hash","k2","v2");
//删除键值对
jedis.hdel("hash","k1");
//取出所有value,返回list
System.out.println(jedis.hvals("hash"));
//取出指定key的value
System.out.println(jedis.hget("hash","k2"));
//取出所有key-value,map类型
System.out.println(jedis.hgetAll("hash"));
//jedis.del("name");
//关闭资源
RedisUtils.getClose(jedis);
}
}
jedis.properties
host=127.0.0.1
port=6379
password=123456
maxTotal=20
maxIdle=10