Idea中使用jedis在redis中存取值小案例

本案例创建的普通的java项目


步骤一:在pom.xml文件中导入依赖

   <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>

        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.9.0</version>
        </dependency>

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>4.3.8.RELEASE</version>
        </dependency>


    </dependencies>

步骤二:在类中存取redis中存取redis的值

package com.qf.jedis;

import com.qf.entity.User;
import org.junit.Test;
import org.springframework.util.SerializationUtils;
import redis.clients.jedis.Jedis;

public class JedisTest {
    @Test
    public void test(){
        //建立连接
        Jedis jedis=new Jedis("192.168.22.131",6379);//指定linux的ip和端口号
       //jedis.auth("P@ssw0rd");//如果redis有密码就这么写。如果是连接池的话

        //操作。存储的形式要么都String要么都数组


        //序列化
      /* //操作中的第一个例子,存储一个字符串
       jedis.set("name","李四"); //这行代码执行完后,这个键值对存放进了redis图形化界面中*/


     /* //操作中的第二个示例,给redis存储一个对象。操作后的效果是user是key,user对象作为值存储在了redis中
      String key="user";//准备key

        User user=new User();//准备value
        user.setId(1);
        user.setName("王五");

        byte[] serializeKey = SerializationUtils.serialize(key);//使用SerializationUtils进行序列化操作,这个工具类有序列化和反序列化两个方法
        byte[] serializeValue = SerializationUtils.serialize(user);

        jedis.set(serializeKey,serializeValue);//将对象存进redis中*/


     //反序列化
          //获取redis中存储的byte[]数组
        String key="user";//要获取的值的key
        byte[] serializeKey = SerializationUtils.serialize(key);

        byte[] serializeValue = jedis.get(serializeKey);//通过key获取redis中存储的值

        User user = (User) SerializationUtils.deserialize(serializeValue);//将获取到的值进行反序列化,变成我们能识别的
        System.out.println("user = " + user);


        System.out.println("ok!!");
        //释放资源
        jedis.close();
    }
}

步骤二用到的User实体类

package com.qf.entity;

import java.io.Serializable;

public class User  implements Serializable{
    private Integer id;
    private String name;

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                '}';
    }
}

案例结构图:
在这里插入图片描述


使用连接池连接带有密码的redis。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值