本节目标

通过JedisPool获取Jedis示例,并完成对redis 简单的Key-value读写操作。

完整代码结构如下:

redis服务端

在本地运行redis-server.exe,然后在resources新建jedis.properties:

  1. redis.host=localhost
  2. redis.port=

配置jedis

我们将jedis相关配置放在单独的Spring Config中,在resources/spring目录新建applicationContext-jedis.xml。

  1. <!-- 加载配置属性文件 -->
  2. <context:property-placeholder ignore-unresolvable="true" location="classpath*:jedis.properties"/>
  3.  
  4. <bean id="jedisPoolConfig" class="redis.clients.jedis.JedisPoolConfig">
  5. <property name="maxIdle" value=""/> <!-- 最大能够保持idel状态的对象数 -->
  6. <property name="maxTotal" value=""/> <!-- 最大分配的对象数 -->
  7. <property name="testOnBorrow" value="true"/> <!-- 当调用borrow Object方法时,是否进行有效性检查 -->
  8. </bean>
  9.  
  10. <bean id="jedisPool" class="redis.clients.jedis.JedisPool">
  11. <constructor-arg index="" ref="jedisPoolConfig"/>
  12. <constructor-arg index="" value="${redis.host}" type="java.lang.String"/>
  13. <constructor-arg index="" value="${redis.port}" type="int"/>
  14. </bean>

测试

添加单元测试,通过@Resource注解获取JedisPool实例对象。

  1. @Resource
  2. private JedisPool jedisPool;

然后调用jedisPool对象的getResource()方法就可以获取到Jedis实例了。

  1. Jedis jedis = jedisPool.getResource();

先测试个最基本的get,set操作

  1. @Test
  2. public void TestRedis() {
  3. Jedis jedis = jedisPool.getResource();
  4.  
  5. String key = "a";
  6. jedis.set(key, "111");
  7.  
  8. String data = jedis.get(key);
  9.  
  10. System.out.println(data);
  11.  
  12. }

运行结果:111

再测试个列表操作:

  1. @Test
  2. public void testList(){
  3. Jedis jedis=jedisPool.getResource();
  4.  
  5. String key="articles";
  6.  
  7. jedis.lpush(key,"文章1");
  8. jedis.lpush(key,"文章2");
  9. jedis.lpush(key,"文章3");
  10.  
  11. List<String> articles=jedis.lrange(key,0,3);
  12. for(String article:articles){
  13. System.out.println(article);
  14. }
  15. }

运行结果:

文章3

文章2

文章1

再来个集合操作:

  1. @Test
  2. public void testSet(){
  3. Jedis jedis=jedisPool.getResource();
  4.  
  5. String key="tags";
  6. jedis.sadd(key,"宝马");
  7. jedis.sadd(key,"豪车");
  8. jedis.sadd(key,"SUV");
  9. jedis.sadd(key,"SUV");
  10.  
  11. Set<String> tags=jedis.smembers(key);
  12. for(String tag:tags){
  13. System.out.println(tag);
  14. }
  15. }

运行结果:

宝马

豪车

SUV

先到这里吧,SO EASY!!

源码地址:https://github.com/cathychen00/learnjava/tree/master/DemoRedis

JAVA入门[21]-Jedis操作redis示例的更多相关文章

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

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

  2. Java中使用Jedis操作Redis(转载)

    整理 1.字符串 添加:set keyname value 查询:get keyname 拼接:append keyname value 删除:del keyname 添加多个: mset keyna ...

  3. 【转载】Java中使用Jedis操作Redis

    1 package com.test; 2 3 import java.util.HashMap; 4 import java.util.Iterator; 5 import java.util.Li ...

  4. (转)Java中使用Jedis操作Redis

    转自http://www.cnblogs.com/liuling/p/2014-4-19-04.html 使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://file ...

  5. Java中使用Jedis操作Redis

    使用Java操作Redis需要jedis-2.1.0.jar,下载地址:http://files.cnblogs.com/liuling/jedis-2.1.0.jar.zip 如果需要使用Redis ...

  6. Redis】Java中使用Jedis操作Redis(Maven导入包)、创建Redis连接池

    如果我们使用Java操作Redis, 需要确保已经安装了 redis 服务及 Java redis 驱动. Maven项目可以直接在pom.xml中加入jedis包驱动: <!-- https: ...

  7. 【JAVA】使用 jedis操作redis——连接、存储数据、切库等

    本篇运用Java调用jedis包(jedis在线文档API ),做简单操作实例. 安装jedis 1. 2.9.0 jar 版本下载: jedis-2.9.0.jar 2. 新建项目,添加该驱动包 连 ...

  8. Java中使用Jedis操作Redis之二

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

  9. <Redis> 入门四 Jedis操作Redis

    pom依赖 <dependencies> <!-- https://mvnrepository.com/artifact/redis.clients/jedis --> < ...

随机推荐

  1. day2--计算机基础

    一.服务器 1u服务器,1u=4.45cm 戴尔服务器种类: 电脑主机组成 主板.CPU.内存.硬盘.显卡.声卡等等. 运维关注三大部件:CPU.内存.硬盘(Disk) 电源,考虑使用双电服务器,电源 ...

  2. C语言 第三章 关系、逻辑运算与分支流程控制

    目录 一.关系运算 二.逻辑运算 三.运算优先级 四.if语句 4.0.代码块 4.1.单if语句 4.2.if else 4.3.多重if 4.4.?号:号表达式 五.switch语句 一.关系运算 ...

  3. Windows命令行command的Shell命令详细解析和语法

    CMD命令大全及详细解释和语法 Microsoft Windows XP [版本 5.1.2600] 有关某个命令的详细信息,请键入 HELP 命令名 ASSOC    显示或修改文件扩展名关联. A ...

  4. Asp.Net MVC 中的 Cookie(译)

    Asp.Net MVC 中的 Cookie(译) Cookie Cookie是请求服务器或访问Web页面时携带的一个小的文本信息. Cookie为Web应用程序中提供了一种存储特定用户信息的方法.Co ...

  5. 走进Spark生态圈:环境的安装与配置

    什么是Spark? Apache Spark 是一种大规模数据处理的快速通用引擎,使用基于内存的处理方式,较与MapReduce而言,解决了其shuffle多次IO操作带来的效率低问题,从而达到快速的 ...

  6. word,excel,ppt转Pdf,Pdf转Swf,通过flexpaper+swftools实现在线预览

    其实这是我好几年前的项目,现在再用这种方式我也不建议了,毕竟未来flash慢慢会淘汰,此方式也是因为目测大部分人都装了flash,才这么做的,但是页面展示效果也不好.其实还是考虑收费的控件,毕竟收费的 ...

  7. [转]开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo

    热衷于开源框架探索的我发现ASP.NET MVC与jQuery easyUI的组合很给力.由于原先一直受Ext JS框架的licence所苦恼,于是痛下决心寻找一个完全免费的js框架——easyUI. ...

  8. netty(三) 组件介绍

    netty各组件说明:channel ----- SocketEventLoop -------控制流,多线程处理,并发channelFuture ------- 异步通知 channel:主要是实现 ...

  9. x86平台上的Windows页表映射机制

    首先,在x86架构的处理器上,一个正常页面大小为4KB,非PAE模式下,CR3持有页目录页面的物理地址,PDE和PTE格式相同大小为4字节.此时每个页表页面包含1024个PTE,可以映射1024个页面 ...

  10. RecyclerView分割线——万能分割线

    参照网络上众多的分割线设计方法,对方法进行调整和修改,最终完成的比较通用的RecyclerView分割线,底部会附上参考网址,大家可以去看一下. 在正文之前,先说一下个人看法:研究下来,我发现,其实最 ...