实体类:
package com.nf.redisDemo1.entity; import java.io.Serializable; public class News implements Serializable { private long id; private String title; private String body; public News() { } public News(String title, String body) { this.title = title; this.body = body; } public long getId() { return id; } public void setId(long id) { this.id = id; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getBody() { return body; } public void setBody(String body) { this.body = body; } }
操作代码:
package com.nf.redisDemo1; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import com.nf.redisDemo1.entity.News; import com.nf.redisDemo1.service.NewsService; import com.nf.redisDemo1.service.imp.NewsServiceImp; import com.nf.redisDemo1.spring.SpringRootConfig; import org.springframework.context.annotation.AnnotationConfigApplicationContext; import redis.clients.jedis.Jedis; import java.io.*; import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) throws IOException, ClassNotFoundException { Jedis jedis = new Jedis(); String key = "listNews"; // Byte 写入 Redis List<News> news = new ArrayList<>(); news.add(new News("title1","body1")); news.add(new News("title2","body2")); news.add(new News("title3","body3")); ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(baos); oos.writeObject(news); //写入 Redis jedis.set(key.getBytes(), baos.toByteArray()); //关闭流 oos.close(); // 读取 Byte格式 存入的数据 ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(jedis.get(key.getBytes())); ObjectInputStream objectInputStream = new ObjectInputStream(byteArrayInputStream); List<News> o = (List<News>) objectInputStream.readObject(); System.out.println(o); } }
学无止境(LC)
本文详细介绍了一种使用Java序列化技术将实体类对象转换为字节流,并将其存储到Redis数据库中的方法。通过示例代码,展示了如何将News实体类实例化并序列化为字节数组,然后使用Jedis客户端将这些数据写入Redis,以及如何从Redis中读取字节数组并反序列化为News对象列表。
3751

被折叠的 条评论
为什么被折叠?



