package com.wodexiangce.util;

 import java.util.Set;

 import redis.clients.jedis.Jedis;
 /**
  * redis工具类
  * @author wangbo
  *
  */
 public class RedisUtil {
     private static Jedis jedis; 

     /**
      * 根据classid获取对应的产品信息
      * @param classid
      * @return
      */
     public static String getRedisValue(String classid){
         jedis = JedisPoolUtils.getJedis();
         String value = jedis.get(classid);
         JedisPoolUtils.returnRes(jedis);
         return value;

     }
     /**
      * 将数据保存到redis
      * @param key
      * @param value
      */
     public static void setRedisValue(String key,String value){
         jedis = JedisPoolUtils.getJedis();
         jedis.set(key, value);
         JedisPoolUtils.returnRes(jedis);
     }
     /**
      * 获取所有的key
      * @return
      */
     public static Set<String> getAllKeys(){
         jedis = JedisPoolUtils.getJedis();
         Set<String> set = jedis.keys("*");
         JedisPoolUtils.returnRes(jedis);
         return set;
     }
     /**
      * 删除指定的key
      * @param key
      */
     public static void delKey(String key){
         jedis = JedisPoolUtils.getJedis();
         jedis.del(key);
         JedisPoolUtils.returnRes(jedis);
     }
     /**
      * 清空redis数据库
      */
     public static void flushdb(){
         jedis = JedisPoolUtils.getJedis();
         jedis.flushAll();
         //jedis.flushDB();
         JedisPoolUtils.returnRes(jedis);
     }

 }
 package com.wodexiangce.util;

 import redis.clients.jedis.Jedis;
 import redis.clients.jedis.JedisPool;
 import redis.clients.jedis.JedisPoolConfig;
 /**
  * redis连接池
  * @author wangbo
  *
  */
 public class JedisPoolUtils {

     private static JedisPool pool;

     /**
      * 建立连接池真实环境,一般把配置参数缺抽取出来。
      *
      */
     private static void createJedisPool() {

         // 建立连接池配置参数
         JedisPoolConfig config = new JedisPoolConfig();

         // 设置最大连接数
         config.setMaxActive(200);

         // 设置最大阻塞时间,毫秒数
         config.setMaxWait(300);

         // 设置空间连接
         config.setMaxIdle(50);
         config.setMinIdle(10);

         // 创建连接池
         pool = new JedisPool(config, "192.168.111.211", 6379, 30000, "password");
     }

     /**
      * 在多线程环境同步初始化
      */
     private static synchronized void poolInit() {
         if (pool == null)
             createJedisPool();
     }

     /**
      * 获取一个jedis 对象
      *
      * @return
      */
     public static Jedis getJedis() {

         if (pool == null)
             poolInit();
         return pool.getResource();
     }

     /**
      * 归还一个连接
      *
      * @param jedis
      */
     public static void returnRes(Jedis jedis) {
         pool.returnResource(jedis);
     }

 }

Java通过jedis操作redis缓存的更多相关文章

  1. Redis入门和Java利用jedis操作redis

    Redis入门和Java利用jedis操作redis Redis介绍 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - val ...

  2. Java中Jedis操作Redis与Spring的整合

    Redis是一个key-value存储系统.它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有序集合).这些数据类型都支持push/pop. ...

  3. 使用Jedis操作redis 缓存

    案例:http://blog.csdn.net/linlzk/article/details/41801391 Redis是一个开源的Key-Value数据缓存,和Memcached类似. Redis ...

  4. Java使用Jedis操作Redis大全

    Java操作Redis需要导入两个jar: commons-pool2-2.4.2.jar jedis-2.1.0.jar package com.chinasofti.test; import ja ...

  5. Java通过jedis操作redis(增删改查)

    package sgh.main.powersite; import java.util.ArrayList; import java.util.HashMap; import java.util.I ...

  6. java客户端Jedis操作Redis Sentinel 连接池

    pom配置: <dependency> <groupId>org.springframework.data</groupId> <artifactId> ...

  7. jedis操作redis的几种常见方式总结

    Redis是一个著名的key-value存储系统,也是nosql中的最常见的一种,这篇文章主要给大家总结了关于在java中jedis操作redis的几种常见方式,文中给出了详细的示例代码供大家参考学习 ...

  8. JAVA中通过Jedis操作Redis连接与插入简单库

    一.简述 JAVA中通过Jedis操作Redis连接与插入简单库 二.依赖 <!-- https://mvnrepository.com/artifact/redis.clients/jedis ...

  9. Java Spring mvc 操作 Redis 及 Redis 集群

    本文原创,转载请注明:http://www.cnblogs.com/fengzheng/p/5941953.html 关于 Redis 集群搭建可以参考我的另一篇文章 Redis集群搭建与简单使用 R ...

随机推荐

  1. my first go

    package main import "fmt" func main() { var num1 int =5 for num1>0 { fmt.Println(" ...

  2. bringSubviewToFront和insertSubview: atIndex:

    bring方法只能在当前SuperView中改变位置,insertSubview则可以脱离自己的superVIew,成为另个同级甚至高级的view的子view

  3. Elasticsearch学习笔记(一)

    批量建索引: curl -s -XPOST 'localhost:9200/_bulk' --data-binary @documents.json 查看索引mappingmyindex/_mappi ...

  4. sqlserver临时表操作

    创建临时表        方法一:      create table #临时表名(字段1 约束条件,                       字段2 约束条件,                  ...

  5. 关于asp.net与jquery ajax 的一些补充

    补充1:asp.net 与后台交互除了用之前写得$.ajsx()外 还可以直接使用$.get()  , $.post()等. 补充2:jquery 跨域请求 例如: JSONP 跨域: $.ajax( ...

  6. 明白何谓Margin Collapse

    不同于其他很多属性,盒模型中垂直方向上的Margin会在相遇时发生崩塌,也就是说当某个元素的底部Margin与另一个元素的顶部Margin相邻时,只有二者中的较大值会被保留下来,可以从下面这个简单的例 ...

  7. iOS开发之音频口通信-通过方波来收发数据

    之前做过的项目有需要通过音频口通信用方波来收发数据,由于这方面的资料比较少,下面就介绍下其原理,希望能给大家帮助. 一. 音频通信简介大家应该都知道支付宝声波支付和拉卡拉吧,它们都是利用手机的音频口( ...

  8. NSArray倒序

    NSArray倒序 NSArray *tmparr = [[upLoadImageArr reverseObjectEnumerator] allObjects]; ios 正则表达式替换 . 不可变 ...

  9. django book querysets

    from __future__ import unicode_literals from django.db import models from django.contrib.auth.models ...

  10. 看StackOverflow如何用25台服务器撑起5.6亿的月PV(微软的架构)

     问答社区网络 StackExchange 由 100 多个网站构成,其中包括了 Alexa 排名第 54 的 StackOverflow.StackExchang 有 400 万用户,每月 5.6 ...