广告
返回顶部
首页 > 资讯 > 精选 >redis如何存储java对象
  • 882
分享到

redis如何存储java对象

2024-04-02 19:04:59 882人浏览 八月长安
摘要

Redis存储java对象的方法:1、写一个java Bean,包含id和name两个字段,类名是Person。因为要实现序列化需求,所以该类实现Serializable接口。2、需要写一个序列化工具类,用于提供对象的序列化和反序列化的工作

Redis存储java对象的方法:1、写一个java Bean,包含id和name两个字段,类名是Person。因为要实现序列化需求,所以该类实现Serializable接口。2、需要写一个序列化工具类,用于提供对象的序列化和反序列化的工作;3、把Person对象写入Redis;4、用Jedis获取对象。

redis如何存储java对象

具体操作如下:

存储对象:写一个java Bean,包含id和name两个字段,类名是Person,该类实现Serializable接口。

public class Person implements Serializable {

private int id;

private String name;

public Person(int id, String name) {

this.id = id;

this.name = name;

}

public int getId() {

return id;

}

public String getName() {

return name;

}

}

写一个序列化工具类,用于提供对象的序列化和反序列化的工作。

public class SerializeUtil {

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;

}

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;

}

}

把Person对象写入Redis。

public void setObject() {

Person person = new Person(100, "alan");

jedis.set("person:100".getBytes(), SerializeUtil.serialize(person));

person = new Person(101, "bruce");

jedis.set("person:101".getBytes(), SerializeUtil.serialize(person));

}

上面代码运行后,到命令窗口读取对象看是否成功:

redis 127.0.0.1:6379> get person:100

"\xac\xed\x00\x05sr\x00\x15alanland.redis.Person\x05\xf4\x8d9A\xf4`\xb0\x02\x00\x02I\x00\x02idL\x00\x04namet\x00\x12Ljava/lang/String;xp\x00\x00\x00dt\x00\x04alan"

用Jedis获取对象。

public Person getObject(int id) {

byte[] person = jedis.get(("person:" + id).getBytes());

return (Person) SerializeUtil.unserialize(person);

}

测试一下上一步存入的两个对象:

Person person = test.getObject(100);

System.out.println(person.getId());

System.out.println(person.getName());

person = test.getObject(101);

System.out.println(person.getId());

System.out.println(person.getName());

Java控制台输入:

100

alan

101

bruce

--结束END--

本文标题: redis如何存储java对象

本文链接: https://www.lsjlt.com/news/111498.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • redis如何存储java对象
    redis存储java对象的方法:1、写一个java Bean,包含id和name两个字段,类名是Person。因为要实现序列化需求,所以该类实现Serializable接口。2、需要写一个序列化工具类,用于提供对象的序列化和反序列化的工作...
    99+
    2022-10-10
  • Redis如何存储对象
    目录Redis存储对象首先引入依赖创建一个Jedis实例方式一:将对象转化为jsON字符串存入redis方式二:将对象序列化后存到redis方式三:将对象用Hash数据类型存储Redis可以存储java对象吗答案:是可以...
    99+
    2022-06-16
    Redis存储对象 Redis对象存储 存储对象Redis
  • redis如何存储list对象
    在Redis中,可以使用列表数据结构存储list对象。Redis中的列表是一种有序的字符串列表,可以按照插入顺序存储多个字符串。以下...
    99+
    2023-09-11
    redis
  • Redis怎么存储对象
    这篇“Redis怎么存储对象”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Redis怎么存储对象”文章吧。Redis存储对象...
    99+
    2023-07-02
  • redis如何保存java对象
    在redis中保存java对象的方法:1.利用序列化保存;2.利用反序列化保存;在redis中保存java对象的方法有序列化和反序列化两种利用序列化保存java对象baos = new ByteArrayOut...
    99+
    2022-10-03
  • redis存储对象的方法
    这篇文章运用简单易懂的例子给大家介绍redis存储对象的方法,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。redis已经应用相当广泛了,但redis本身并没有直接存储对象的方法,我们可...
    99+
    2022-10-18
  • 如何在java中存储对象头
    如何在java中存储对象头?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。常用的java框架有哪些1.SpringMVC,Spring Web MVC是一种基于Java的实现了W...
    99+
    2023-06-14
  • redis存储对象方法的比较
    本篇内容主要讲解“redis存储对象方法的比较”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“redis存储对象方法的比较”吧!redis 存储对象的方法对比问题背景:原来项目里面全部是直接red...
    99+
    2023-06-20
  • redis中list存储对象的方法
    小编给大家分享一下redis中list存储对象的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!如果需要用到Redis存储Li...
    99+
    2022-10-18
  • redis 存储对象的方法对比分析
    redis 存储对象的方法对比 问题背景: 原来项目里面全部是直接redis存储对象的json数据,需要频繁的序列化和反序列化,后来考虑更换项目中的redis存储对象为hash对象存...
    99+
    2022-11-12
  • Redis如何存储对象与集合示例详解
    前言 大家都知道在项目中,缓存以及mq消息队列可以说是不可或缺的2个重要技术。前者主要是为了减轻数据库压力,大幅度提升性能。后者主要是为了提高用户的体验度,我理解的是再后端做的一个ajax请求(异步),并且...
    99+
    2022-10-18
  • SpringBoot怎么整合Redis实现序列化存储Java对象
    今天小编给大家分享一下SpringBoot怎么整合Redis实现序列化存储Java对象的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解...
    99+
    2023-07-05
  • 如何在Spring容器中存储Java对象?
    Spring框架是一个非常流行的Java开发框架,它提供了许多有用的功能,其中之一就是在Spring容器中存储Java对象。在本文中,我们将探讨如何使用Spring框架来存储Java对象。 Spring Bean 在Spring中,对象...
    99+
    2023-11-02
    存储 spring 容器
  • Java对象存储内存布局详解
    目录Java对象存储内存布局Java对象的访问定位Java对象的创建过程Java对象分配内存是否线程安全Java类实例化顺序Java对象存储内存布局 众所周知,Java是一门面向对象...
    99+
    2023-05-18
    Java对象存储内存布局 Java内存布局 Java对象内存
  • redis如何实现保存对象
    目录redis保存对象redis数据结构保存对象redis存放对象的两种方式数据格式方式一(String)方式二(hash)redis保存对象 redis数据结构 String——字符串Hash&...
    99+
    2022-06-16
    redis保存对象 保存对象 保存对象redis
  • C#中如何存储BLOB对象
    本篇文章给大家分享的是有关C#中如何存储BLOB对象,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。C#存储BLOB对象检索和C#存储BLOB对象是一个很简单的过程;相反的过程,...
    99+
    2023-06-17
  • 如何更新redis缓存的对象
    要更新Redis缓存的对象,可以按照以下步骤操作:1. 获取需要更新的对象的数据。2. 更新对象的数据。3. 将更新后的对象数据存储...
    99+
    2023-08-23
    redis
  • Redis 存储对象信息用 Hash 和String的区别
    目录前言StringHashString 和 Hash 占用内存的比较网友讨论总结前言 Redis 内部使用一个 RedisObject 对象来表示所有的 key 和 value,RedisObject 中的 type,...
    99+
    2022-09-29
  • Redis 存储对象信息用 Hash 和String的区别
    目录前言StringHashString 和 Hash 占用内存的比较网友讨论总结前言 Redis 内部使用一个 RedisObject 对象来表示所有的 key 和 value,R...
    99+
    2022-11-13
  • SpringBoot整合Redis实现序列化存储Java对象的操作方法
    目录一、背景1、思考2、方案二、源码分析三、注入RedisTemplate1、引入依赖2、Redis 连接信息3、Redis 核心配置类4、Redis工具类四、测试1、创建 Java 实体类 UserInfo2、测试用例...
    99+
    2023-03-23
    SpringBoot整合Redis序列化存储Java对象 SpringBoot整合Redis SpringBoot Redis序列化存储
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作