博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jedis存取对象和对象列表
阅读量:6911 次
发布时间:2019-06-27

本文共 3435 字,大约阅读时间需要 11 分钟。

下载redis   安装省略

 

新建项目 引用jedis-x.x.x.jar和commons-pool-x.x.jar

 

Jedis存取对象和对象列表 需要对象实现Serializable接口

 

package com.zns.bean;import java.io.Serializable;public class Person implements Serializable {    private int id;    private String name;    public int getId() {        return id;    }    public void setId(int id) {        this.id = id;    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public Person(int id, String name) {        super();        this.id = id;        this.name = name;    }    @Override    public String toString() {        return "Person [id=" + id + ", name=" + name + "]";    }}

 

package com.zns.util;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;public class SerializeUtil {    /**     * 序列化     *      * @param object     * @return     */    public static byte[] serialize(Object object) {        ObjectOutputStream oos = null;        ByteArrayOutputStream baos = null;        try {            // 序列化            baos = new ByteArrayOutputStream();            oos = new ObjectOutputStream(baos);            oos.writeObject(object);            byte[] bytes = baos.toByteArray();            return bytes;        } catch (Exception e) {        }        return null;    }    /**     * 反序列化     *      * @param bytes     * @return     */    public static Object unserialize(byte[] bytes) {        ByteArrayInputStream bais = null;        try {            // 反序列化            bais = new ByteArrayInputStream(bytes);            ObjectInputStream ois = new ObjectInputStream(bais);            return ois.readObject();        } catch (Exception e) {        }        return null;    }}

 

package com.zns.test;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import com.zns.bean.Person;import com.zns.util.SerializeUtil;import redis.clients.jedis.Jedis;public class Test {    public static void main(String[] args) {        //指定服务器和端口        Jedis jedis = new Jedis("127.0.0.1", 6379);        // 存取string        jedis.set("key1", "value1");        System.out.println(jedis.get("key1"));        //删除key        jedis.del("key1");        System.out.println(jedis.get("key1"));        // 存取map        Map
map = new HashMap
(); map.put("name", "zhangsan"); map.put("age", "18"); jedis.hmset("user1", map); List
rsmap = jedis.hmget("user1", "name", "age"); System.out.println(rsmap); // 存取person对象 Person person1 = new Person(1, "张三"); jedis.set("key2".getBytes(), SerializeUtil.serialize(person1)); byte[] personbyte1 = jedis.get(("key2").getBytes()); Person p1 = (Person) SerializeUtil.unserialize(personbyte1); System.out.println(p1.getId() + ":" + p1.getName()); //存取list person对象 List
list=new ArrayList
(); list.add(new Person(1, "张三")); list.add(new Person(2, "李四")); jedis.set("key3".getBytes(), SerializeUtil.serialize(list)); byte[] personlistbyte = jedis.get(("key3").getBytes()); List
list1 = (List
) SerializeUtil.unserialize(personlistbyte); System.out.println(list1); jedis.close(); }}

 

转载于:https://www.cnblogs.com/zengnansheng/p/10386070.html

你可能感兴趣的文章
20个java异常处理最佳实践
查看>>
centos架设pptp服务:并测试windos客户端、Linux客户端!
查看>>
【c#】BackgroundWorker类的使用方法
查看>>
【NetApp】启用smb2.0
查看>>
Nginx与django+uwsgi成功勾搭的始末(上)
查看>>
创业的国度
查看>>
001作业题
查看>>
字节字符转换流
查看>>
Hadoop序列化-------总结
查看>>
YII2 update vendor error
查看>>
从cpp-empty-test说起
查看>>
Redis密码验证情况下创建集群参考资料
查看>>
ssh连接复用
查看>>
我的友情链接
查看>>
原生js弹窗
查看>>
修改Hosts文件
查看>>
Python基本概念
查看>>
网络工程师该何去何从
查看>>
yum源配置 20000多个rpm包
查看>>
Ubuntu 16.04安装pip、pip3、ipython和ipython3
查看>>