一聚教程网:一个值得你收藏的教程网站

热门教程

Java操作redis实现增删查改功能的方法示例

时间:2022-06-29 01:23:00 编辑:袖梨 来源:一聚教程网

首先,我们需要在windows下配置一个redis环境,具体配置教程请看:http://www.jb51.net/article/96230.htm

然后需要导入:jedis-2.7.3.jar这个包,看如下代码:

packageredis.main;
importredis.clients.jedis.Jedis;
importredis.clients.jedis.JedisPool;
importredis.clients.jedis.JedisPoolConfig;
publicfinalclassRedisPool {
  //Redis服务器IP
  privatestaticString ADDR ="127.0.0.1";
  //Redis的端口号
  privatestaticintPORT =6379;
  //访问密码
  privatestaticString AUTH ="123456";
  //可用连接实例的最大数目,默认值为8;
  //如果赋值为-1,则表示不限制;如果pool已经分配了maxActive个jedis实例,则此时pool的状态为exhausted(耗尽)。
  privatestaticintMAX_ACTIVE =1024;
  //控制一个pool最多有多少个状态为idle(空闲的)的jedis实例,默认值也是8。
  privatestaticintMAX_IDLE =200;
  //等待可用连接的最大时间,单位毫秒,默认值为-1,表示永不超时。如果超过等待时间,则直接抛出JedisConnectionException;
  privatestaticintMAX_WAIT =10000;
  privatestaticintTIMEOUT =10000;
  //在borrow一个jedis实例时,是否提前进行validate操作;如果为true,则得到的jedis实例均是可用的;
  privatestaticbooleanTEST_ON_BORROW =true;
  privatestaticJedisPool jedisPool =null;
  /**
   * 初始化Redis连接池
   */
  static{
    try{
      JedisPoolConfig config =newJedisPoolConfig();
      //config.setMaxActive(MAX_ACTIVE);
      config.setMaxTotal(MAX_ACTIVE);
      config.setMaxIdle(MAX_IDLE);
      config.setMaxWaitMillis(MAX_WAIT);
      config.setTestOnBorrow(TEST_ON_BORROW);
      jedisPool =newJedisPool(config, ADDR, PORT, TIMEOUT, AUTH);
    }catch(Exception e) {
      e.printStackTrace();
    }
  }
  /**
   * 获取Jedis实例
   * @return
   */
  publicsynchronizedstaticJedis getJedis() {
    try{
      if(jedisPool !=null) {
        Jedis resource = jedisPool.getResource();
        returnresource;
      }else{
        returnnull;
      }
    }catch(Exception e) {
      e.printStackTrace();
      returnnull;
    }
  }
  /**
   * 释放jedis资源
   * @param jedis
   */
  publicstaticvoidreturnResource(finalJedis jedis) {
    if(jedis !=null) {
      jedisPool.close();
    }
  }
}


下面是main函数:

packageredis.main;
importjava.util.Set;
importredis.clients.jedis.Jedis;
/**
 * Hello world!
 *
 */
publicclassApp
{
  publicstaticvoidmain( String[] args )
  {
    insert("username","xiaoming1");
    System.out.println(get("username"));
    delete("username");
    System.out.println(get("username"));
  }
  staticvoidinsert(String key, String value){
     Jedis jedis = RedisPool.getJedis();
     jedis.set(key, value);
  }
  staticvoiddelete(String key){
    Jedis jedis = RedisPool.getJedis();
    jedis.del(key);
  }
  staticString get(String key){
    Jedis jedis = RedisPool.getJedis();
    returnjedis.get(key);
  }
}

热门栏目