java中使用redis

1.引入jar包:

2.工具类

package cms.redis;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

import java.io.IOException;
import java.io.InputStream;
import java.util.Iterator;
import java.util.Properties;
import java.util.Set;

public class JedisPoolUtils {
    private static JedisPool pool = null;

    static {
        //加载配置文件
        InputStream in = JedisPoolUtils.class.getClassLoader().getResourceAsStream("redis.template");
        Properties pro = new Properties();
        try {
            pro.load(in);
        } catch (IOException e) {
            e.printStackTrace();
        }
       
        //获得池子对象
        JedisPoolConfig poolConfig = new JedisPoolConfig();
        poolConfig.setMaxIdle(Integer.parseInt(pro.get("redis.client.pool.max").toString()));//最大闲置个数
        poolConfig.setMinIdle(Integer.parseInt(pro.get("redis.client.pool.idle").toString()));//最小闲置个数
        poolConfig.setTestOnBorrow(pro.getProperty("redis.client.pool.TestOnBorrow").equals("true"));
        pool = new JedisPool(poolConfig, pro.getProperty("redis.server.ip"), Integer.parseInt(pro.get("redis.server.port").toString()),
        		Integer.parseInt(pro.get("redis.client.pool.try.timeout").toString()), pro.getProperty("redis.server.password"));
    }

    /**
     * 获取Jedis实例
     */

    public synchronized static Jedis getJedis() {

        try {

            if (pool != null) {
                Jedis resource = pool.getResource();
                return resource;
            } else {
                return null;
            }

        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }

    }

    /***
     * 
     * 释放资源
     */
    
    public static void returnResource(final Jedis jedis) {
            if(jedis != null) {
            	pool.close();
            }
        
    }
    
    /**
     * Redis基本(字符串)操作
     * 返回 key 所关联的字符串值。
     * @param key
     * @return
     */
    public static String get(String key){
		Jedis jedis = (Jedis) getJedis();
		String set = jedis.get(key);
		jedis.close();
        return set;
    }
    /**
     * Redis基本(字符串)操作
     * 将设置某个key的值,如果 key 已经持有其他值,就覆写旧值,无视类型。
     * @param key
     * @param value
     * @return
     */
	 public static String set(String key, String value){
		Jedis jedis = (Jedis) getJedis();
		String set = jedis.set(key, value);
        jedis.close();
        return set;
	 }
    
    public static void deleteByKeyPrefix(String KeyPrefix){
    	Jedis jedis = (Jedis) getJedis();
    	Set<String> set = jedis.keys(KeyPrefix +"*");
    	Iterator<String> it = set.iterator();
    	while(it.hasNext()){
    		String keyStr = it.next();
    		jedis.del(keyStr);
    	}
    	jedis.close();
    }
    
    public static void main(String[] args) {
    	JedisPoolUtils.set("a", "aaa");
	}
}

 3.配置文件

redis.template

redis.server.ip=127.0.0.1
redis.server.port=6379
redis.server.password=wxy
redis.client.pool.max=20
redis.client.pool.idle=10
redis.client.pool.TestOnBorrow=false
redis.client.pool.try.timeout=500

4.关闭和启动redis

关闭,杀死进程

开启

./redis-server ../redis.conf  

5.其他

redis.conf中有bind  ip的配置,如果bind 127.0.0.1,只能本机访问。band 172.17.xx.xx 其他机器页=也可以访问。 

6.redis API

Redis Java 常用API

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值