小工具      在线工具  汉语词典  css  js  c++  java

使用Redis Hash存储Java对象

Redis,redis,java,Hash 额外说明

收录于:116天前

Hash的特点

1.将具有同一类规则的数据放到redis中的一个数据容器里,便于查找数据。
2.使用hash 省内存。在hash类型中,一个key可以对应多个field,一个field对应一个value。将一个对象存储为hash类型的好处之一:较于每个字段都单独存储成string类型来说,更能节约内存。
在这里插入图片描述

代码实现

package com.redisdemo;

import redis.clients.jedis.Jedis;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class RedisHashDemo {
    
    public static void main(String[] args) {
    
        Jedis jedis = new Jedis("127.0.0.1",6379);
        List<User> userList = getUserList();
        for (User user : userList){
    
            Map<String,String> map = new HashMap<>();
            map.put("id",user.getId());
            map.put("name",user.getName());
            jedis.hmset(user.getId(),map);
            Map userObj =jedis.hgetAll(user.getId());
            System.out.println(userObj);
            String name =jedis.hget(user.getId(),"name");
            System.out.println("按id和name取值:"+name);
        }
        // 4.释放资源
        jedis.close();

    }

    private static List<User> getUserList(){
    
        List<User> userList = new ArrayList<>();
        User user1 = new User();
        user1.setId("1");
        user1.setName("王八1");

        User user2 = new User();
        user2.setId("2");
        user2.setName("王八2");
        userList.add(user1);
        userList.add(user2);
        return userList;
    }
}

在这里插入图片描述

. . .

相关推荐

额外说明

java -jar 处理带空格的参数args

public static void main(String[] args) { if (args.length != 2) { return; } String s1 = args[0]; String s2

额外说明

2.算法——程序的灵魂

1.什么是算法: 一个程序包含两方面的内容; 第一 对数据的描述,在程序中要指定数据类型和数据的组成形式,即数据结构。 第二对操作的描述,即操作步骤,也就是算法(algorithm) 程序 = 算法 + 数据结构; 如:做菜肴,菜谱上一般包括:(1)配料

额外说明

【Python入门教程】第43章合集

本篇我们开始学习 Python 中的集合(Set)数据类型和相关的操作。 集合数据类型 Python 中的集合是一个由不可变元素组成的无序列表。这意味着: 集合中的元素没有顺序。 集合中的元素具有唯一性。集合中不允许存在重复的元素。 集合中的元素只能是不

额外说明

Redis与MySQL双写一致性如何保证

-什么是双写一致性? 指的是当我们更新了数据库的数据之后redis中的数据 也要同步去更新。使用redis读取数据的流程,当用户访问数据的时候,会先从缓存中读取数据,如果命中缓存的话,那么直接把缓存中的数据返回给用户,如果缓存中没有数据的话,先查询数据库

额外说明

JavaScript原生将图片转成base64

1.写个html文件 <!-- 产品照片 --> <div class="mb-3"> <label for="cover" class="form-label">产品图片</label> <input type="file"

额外说明

计算机英语讲课笔记11(Play with Flask)

文章目录 1. Flask's Documentation 2. Installation of Flask (1) Create an environment (2) Activate the environment (3) Install Flask

额外说明

忘记MySQL登录密码怎么办?

文章目录 一、提出问题 二、解决问题 (一)给MySQL设置环境变量 (二)关闭正在运行的MySQL服务 (三)跳过权限表认证,启动MySQL服务 (四)免密登录MySQL (五)修改root用户密码 (六)重新登录MySQL (七)在Navicat里创

额外说明

Python案例:GUI用户注册信息管理系统

一、提出任务 创建图形用户界面,通过菜单实现用户的增删改查操作。 二、实现步骤 1、创建程序 - GUI用户注册信息管理系统 # -*- coding: utf-8 -*- """ 功能:GUI用户注册信息管理系统 作者:华卫 日期:2018年2月7日

额外说明

Windows系统丢失ReAgent.dll文件导致程序无法启动问题

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个ReAgent.dll文件(

额外说明

mfc110esn.dll文件丢失找不到如何解决?

其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或者损坏了,这时你只需下载这个mfc110esn.dll文件进行安装(前提是找到适合的版本)

ads via 小工具