Redis 中 byte格式 寫入、取出


實體類:

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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM