`
gaojingsong
  • 浏览: 1202348 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【JAVA程序操作Redis 】

阅读更多

package redisdemo.redistest;

 

import java.util.HashMap;

import java.util.Iterator;

import java.util.List;

import java.util.Map;

 

 

import redis.clients.jedis.Jedis;

/**

 * Redis 基本操作方法

 * <dependency>

    <groupId>redis.clients</groupId>

    <artifactId>jedis</artifactId>

    <version>2.7.3</version>

</dependency>

    

 * @QQ: 525354786

 * @author gaojingsong

 *

 */

public class TestRedis {

    private static Jedis jedis; 

    

    public static void main(String[] args) throws Exception {

    connect();

    testString();

    testMap();

   

//    testList();

   

    testSet();

   

//    testSort();

}

    public static void connect() {

        //连接redis服务器,192.168.0.100:6379

        jedis = new Jedis("192.168.1.111", 6379);

        //权限认证

        //jedis.auth("admin");  

    }

    

    /**

     * redis存储字符串

     */

    public static void testString() {

        //-----添加数据----------  

        jedis.set("name","张三");//向key-->name中放入了value-->张三  

        System.out.println(jedis.get("name"));//执行结果:张三  

        

        jedis.append("name", "李四"); //拼接

        System.out.println(jedis.get("name")); 

        

        jedis.del("name");  //删除某个键

        System.out.println(jedis.get("name"));

        //设置多个键值对

        jedis.mset("name","张思德","age","23","qq","111111");

        jedis.incr("age"); //进行加1操作

        System.out.println(jedis.get("name") + "-" + jedis.get("age") + "-" + jedis.get("qq"));

        

    }

    

    /**

     * redis操作Map

     */

    public static void testMap() {

        //-----添加数据----------  

        Map<String, String> map = new HashMap<String, String>();

        map.put("name", "李四");

        map.put("age", "22");

        map.put("qq", "123456");

        jedis.hmset("user",map);

        //取出user中的name,执行结果:[minxr]-->注意结果是一个泛型的List  

        //第一个参数是存入redis中map对象的key,后面跟的是放入map中的对象的key,后面的key可以跟多个,是可变参数  

        List<String> rsmap = jedis.hmget("user", "name", "age", "qq");

        System.out.println(rsmap);  

  

        //删除map中的某个键值  

        jedis.hdel("user","age");

        System.out.println(jedis.hmget("user", "age")); //因为删除了,所以返回的是null  

        System.out.println(jedis.hlen("user")); //返回key为user的键中存放的值的个数2 

        System.out.println(jedis.exists("user"));//是否存在key为user的记录 返回true  

        System.out.println(jedis.hkeys("user"));//返回map对象中的所有key  

        System.out.println(jedis.hvals("user"));//返回map对象中的所有value 

  

        Iterator<String> iter=jedis.hkeys("user").iterator();  

        while (iter.hasNext()){  

            String key = iter.next();  

            System.out.println(key+":"+jedis.hmget("user",key));  

        }  

    }

    

    /** 

     * jedis操作List 

     */  

    public static void testList(){  

        //开始前,先移除所有的内容  

        jedis.del("program");  

        System.out.println(jedis.lrange("program",0,-1));  

        //先向key program中存放三条数据  

        jedis.lpush("program","JAVA");  

        jedis.lpush("program","PHP");  

        jedis.lpush("program","ASP");  

        //再取出所有数据jedis.lrange是按范围取出,  

        // 第一个是key,第二个是起始位置,第三个是结束位置,jedis.llen获取长度 -1表示取得所有  

        System.out.println(jedis.lrange("program",0,-1));  

        

        jedis.del("program");

        jedis.rpush("program","spring");  

        jedis.rpush("program","struts");  

        jedis.rpush("program","hibernate"); 

        System.out.println(jedis.lrange("program",0,-1));

    }  

    

    /** 

     * jedis操作Set 

     */  

    public static void testSet(){  

        //添加  

        jedis.sadd("kuser",new String[]{"2","4"});  

 

        System.out.println(jedis.smembers("kuser"));//获取所有加入的value  

 

    }  

  

    /** 

     * jedis操作Sort

     */

    public static void testSort() throws InterruptedException {  

        //jedis 排序  

        //注意,此处的rpush和lpush是List的操作。是一个双向链表(但从表现来看的)  

        jedis.del("st");//先清除数据,再加入数据进行测试  

        jedis.rpush("st", "1");  

        jedis.lpush("st","6");  

        jedis.lpush("st","3");  

        jedis.lpush("st","9");  

        System.out.println(jedis.lrange("st",0,-1));// [9, 3, 6, 1]  

        System.out.println(jedis.sort("st")); //[1, 3, 6, 9]  //输入排序后结果  

        System.out.println(jedis.lrange("st",0,-1));  

    }  

 

}



 

  • 大小: 21.8 KB
  • 大小: 15.2 KB
0
7
分享到:
评论

相关推荐

    java操作redis

    下面将详细讨论如何在Java中操作Redis,以及相关的关键知识点。 首先,为了在Java中操作Redis,我们需要一个Java客户端库。最常用的库之一是Jedis,它是由Redis官方推荐的Java客户端。Jedis提供了丰富的API,涵盖了...

    java redis 各类型操作实例

    以上就是Java操作Redis的一些基本示例。在实际应用中,通常会封装一个Redis模板类,以更高效、安全地管理和执行这些操作。同时,注意合理利用连接池,如JedisPool,以提高性能并防止资源泄漏。在项目中,根据具体...

    Java操作Redis实例,操作封装

    在Java开发中,Redis作为一个高性能的键值存储系统,常被用作缓存和消息...通过以上的方式,我们可以构建一个全面的Java Redis操作工具类,为应用程序提供便捷、高效的Redis操作接口,降低开发复杂度并提高代码复用性。

    java客户端测试redis集群

    9. **最佳实践**:了解并遵循Java客户端与Redis集群交互的最佳实践,如批量操作、命令合并发送等,以提高效率。 通过以上这些方面,我们可以全面地测试Java客户端与Redis集群的整合和功能,确保在实际应用中能够...

    java对redis的基本操作

    #### 二、Java程序实现Redis基本操作 1. **程序基本结构**: - 为了方便地与Redis进行交互,可以创建一个`RedisClient`类来封装各种操作。 2. **主要类**: - **功能类**:`RedisClient` - 包含了非切片(单...

    java连接Redis所需jar包

    Jedis是Java客户端的一个轻量级、开源的实现,它提供了丰富的命令支持,使得Java开发者能够方便地操作Redis。 1. Jedis.jar: 这是Java连接Redis的核心库,包含了所有与Redis服务器交互的API。Jedis提供了一系列的...

    redis安装教程和java操作服务器端demo

    以上就是Redis的安装教程以及Java操作Redis的基本步骤。在实际应用中,可以利用Redis的更多功能,如哈希表、集合、有序集合等,以及事务、发布订阅等高级特性,提升应用程序的性能和可扩展性。在开发过程中,确保对...

    java-redis jar

    首先,Java Redis的客户端库主要有Jedis和Lettuce两个,它们都是Java编写的Redis客户端,提供丰富的API供开发者操作Redis。Jedis是较早且广泛使用的库,支持各种Redis命令,适用于大部分场景;Lettuce则提供了更现代...

    java-Redis操作

    Jedis是Java社区广泛使用的Redis客户端,提供了丰富的API来操作Redis的各种数据结构。在项目中,你需要将`jedis-2.1.0.jar`添加到项目的类路径中,以便能够使用Jedis进行编程。 1. **连接Redis服务器**: - 使用...

    java_redis简单案例

    1. Jedis库:Jedis是Java最常用的Redis客户端,提供了丰富的API来操作Redis。例如,你可以使用`Jedis jedis = new Jedis("localhost", 6379);`来创建一个连接,然后通过`jedis.set(key, value)`存储键值对,`jedis....

    Redis友好界面管理工具,php+redis,java+redis

    它们提供了Java API,使得Java程序可以方便地连接并操作Redis。通过Redis Desktop Manager,Java开发者同样可以快速查看和调整Redis中的数据,提高开发效率。 在日常运维中,使用这样的友好的界面管理工具能极大地...

    java链接Redis实例

    在Java中,我们通常使用Jedis或Lettuce库来连接并操作Redis。 首先,我们需要在项目中引入对应的依赖库。对于Jedis,可以在Maven项目中添加以下依赖: ```xml &lt;groupId&gt;redis.clients &lt;artifactId&gt;jedis ...

    Java调用Redis 简单Demo

    接下来,让我们看看如何创建一个连接到Redis服务器的Java程序。在`ConnectionRedis`这个文件中,我们可以创建一个`Jedis`对象,它代表了与Redis服务器的连接。以下是一个简单的示例: ```java import redis.clients...

    java中运用redis的demo

    本文将详细讲解如何在Java项目中运用Redis,并通过一个名为"hello-redis"的示例来展示Redis的基本操作以及消息订阅功能。 首先,我们需要引入Redis的Java客户端Jedis。在Maven项目中,可以在pom.xml文件中添加以下...

    java操作redis工具类

    为了方便地在Java应用中操作Redis,开发者通常会创建一个工具类(Util),封装各种Redis操作方法。这个"java操作redis工具类"就是这样的一个实用组件,它简化了与Redis服务器的交互,使得代码更简洁、易维护。 首先...

    java的redis项目

    Spring Data Redis提供了`RedisTemplate`和`StringRedisTemplate`,用于操作Redis中的键值对。前者是通用模板,支持各种数据类型,后者专为字符串操作优化。 5. **缓存管理** Spring Boot可以通过`@Cacheable`、`...

    Java 读取写Redis里的数据

    这两个都是流行的Java Redis客户端,提供了丰富的API来执行各种Redis操作。 - Jedis是较早且广泛使用的库,而Lettuce则提供了更现代的Netty支持和异步API。 3. **Jedis的使用**: - 添加Jedis依赖到你的项目...

    redis服务端以及java程序和教程

    在Java中,我们通常使用Jedis或Lettuce库来连接和操作Redis。Jedis是更常用的一个,它提供了丰富的API来执行各种Redis命令。在Eclipse中,你需要将Jedis库导入到项目中,然后编写代码创建连接,执行命令,例如设置...

Global site tag (gtag.js) - Google Analytics