• java对象序列化和反序列化,redis存入和获取对象


    最近使用redis发现直接存储序列化后的对象更方便,现提供java序列化和反序列化的代码

    1.序列化代码:

        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;
        }

    2.反序列化代码:

    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;
        }

    3.向redis中存入序列化后的对象

    public static void setObject(Jedis jedis,int index,String key,Object obj) throws Exception {
            redisFactory.setBytes(jedis,index,key.getBytes(), SerializeUtil.serialize(obj));
            
        }

    4.从redis获取对象

        public static Object getObject(Jedis jedis,int index,String key) throws Exception {
            byte[] objSer = redisFactory.getBytes(jedis,index,key.getBytes());
            return SerializeUtil.unserialize(objSer);
        }
  • 相关阅读:
    总结PLSQL的快捷键以及使用技巧
    WebStorm 常用快捷键
    bootStrap小结3
    bootStrap小结2
    bootStrap小结1
    DataTable操作
    2017春 前端自动化(一)构建工具的搭建
    前端自动化之(一)—浏览器自动实时刷新
    基于div表单模拟右对齐
    纯css去实现loading动画效果图
  • 原文地址:https://www.cnblogs.com/fengyefeiluo/p/5010585.html
Copyright © 2020-2023  润新知