1. 程式人生 > 實用技巧 >java 執行緒池 newFixedThreadPool 返回

java 執行緒池 newFixedThreadPool 返回

1、引入依賴

  <dependency>
          <groupId>redis.clients</groupId>
          <artifactId>jedis</artifactId>
    </dependency>

2、配置類

public interface RedisConfig {

    String host = "62.234.155.68";

    int port = 6379;

    int timeout = 0;

    // 連線池最大連線數(使用負值代表沒有限制)
    int maxActive = 200;

    // 連線池中的最大空閒連線
    int maxIdle = 8;

    // 連線池中的最小空閒連線
    int minIdle = 8;

    // 連線池最大阻塞等待時間(負值代表沒有限制)
    long maxWait = -1;

    String password = "****";
}

3、工具類

public class RedisUtil {

    private static JedisPool jedisPool;

    static {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxIdle(RedisConfig.maxIdle);
        jedisPoolConfig.setMaxWaitMillis(RedisConfig.maxWait);
        jedisPoolConfig.setMaxTotal(RedisConfig.maxActive);
        jedisPoolConfig.setMinIdle(RedisConfig.minIdle);
        jedisPool = new JedisPool(jedisPoolConfig, RedisConfig.host, RedisConfig.port, RedisConfig.timeout, null);
        System.out.println(jedisPool.isClosed());
    }

    public static void set(String key, String value){
        try(Jedis jedis = getJedis()){
            jedis.set(key, value);
        }
    }

    public static String get(String key){
        try(Jedis jedis = getJedis()){
            return jedis.get(key);
        }
    }

    public static long setNx(String key, String value){
        try(Jedis jedis = getJedis()){
            return jedis.setnx(key, value);
        }
    }

    public static void hashSet(String key, String field, String value){
        try(Jedis jedis = getJedis()){
            jedis.hset(key, field, value);
        }
    }

    public static void hashGet(String key, String field){
        try(Jedis jedis = getJedis()){
            jedis.hget(key, field);
        }
    }

    private static Jedis getJedis(){
        return jedisPool.getResource();
    }
}