import java.util.ResourceBundle;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
/**
* jedis池使用
*
* @author xmong
*/
public class MyJedisPool {
// jedis池
private static JedisPool pool;
// 静态代码初始化池配置
static {
// 加载redis配置文件
ResourceBundle bundle = ResourceBundle.getBundle("redis");
if (bundle == null) {
throw new IllegalArgumentException("[redis.properties] is not found!");
}
// 创建jedis池配置实例
JedisPoolConfig config = new JedisPoolConfig();
// 设置池配置项值
config.setMaxActive(Integer.valueOf(bundle.getString("redis.pool.maxActive") .trim()));
config.setMaxIdle(Integer.valueOf(bundle.getString("redis.pool.maxIdle") .trim()));
config.setMaxWait(Long.valueOf(bundle.getString("redis.pool.maxWait") .trim()));
config.setTestOnBorrow(Boolean.valueOf(bundle.getString("redis.pool.testOnBorrow") .trim()));
config.setTestOnReturn(Boolean.valueOf(bundle.getString("redis.pool.testOnReturn") .trim()));
// 根据配置实例化jedis池
pool = new JedisPool(config, bundle.getString("redis.ip") .trim(), Integer.valueOf(bundle.getString("redis.port") .trim()));
}
/**
* 测试jedis池方法
*/
public static void test1() {
// 从jedis池中获取一个jedis实例
Jedis jedis = pool.getResource();
// 获取jedis实例后可以对redis服务进行一系列的操作
jedis.set("name", "xmong");
System.out.println(jedis.get("name"));
jedis.del("name");
System.out.println(jedis.exists("name"));
// 释放对象池,即获取jedis实例使用后要将对象还回去
pool.returnResource(jedis);
}
public static void main(String[] args) {
test1();// 执行test1方法
}
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;
/**
* jedis池使用
*
* @author xmong
*/
public class MyJedisPool {
// jedis池
private static JedisPool pool;
// 静态代码初始化池配置
static {
// 加载redis配置文件
ResourceBundle bundle = ResourceBundle.getBundle("redis");
if (bundle == null) {
throw new IllegalArgumentException("[redis.properties] is not found!");
}
// 创建jedis池配置实例
JedisPoolConfig config = new JedisPoolConfig();
// 设置池配置项值
config.setMaxActive(Integer.valueOf(bundle.getString("redis.pool.maxActive") .trim()));
config.setMaxIdle(Integer.valueOf(bundle.getString("redis.pool.maxIdle") .trim()));
config.setMaxWait(Long.valueOf(bundle.getString("redis.pool.maxWait") .trim()));
config.setTestOnBorrow(Boolean.valueOf(bundle.getString("redis.pool.testOnBorrow") .trim()));
config.setTestOnReturn(Boolean.valueOf(bundle.getString("redis.pool.testOnReturn") .trim()));
// 根据配置实例化jedis池
pool = new JedisPool(config, bundle.getString("redis.ip") .trim(), Integer.valueOf(bundle.getString("redis.port") .trim()));
}
/**
* 测试jedis池方法
*/
public static void test1() {
// 从jedis池中获取一个jedis实例
Jedis jedis = pool.getResource();
// 获取jedis实例后可以对redis服务进行一系列的操作
jedis.set("name", "xmong");
System.out.println(jedis.get("name"));
jedis.del("name");
System.out.println(jedis.exists("name"));
// 释放对象池,即获取jedis实例使用后要将对象还回去
pool.returnResource(jedis);
}
public static void main(String[] args) {
test1();// 执行test1方法
}
}
读取配置文件数据时,无法将数字结果进行转换。
原因是:properties配置文件中的数据多了一个空格。使用.trim()将空格去掉。