• Java 学习笔记 五 -- Jedis


    一、安装 非关系型数据库--redis,Java导入Jedis

    Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,

    目前为止Redis支持的键值数据类型如下:

      字符串类型、散列类型、列表类型、集合类型、有序集合类型

    二、Java对象的序列化与反序列

      (一)安装jar

      (二)图解

      (三)测试代码

    @Test
    public void test01() {
        User user = new User();
        user.setUsername("admin");
        user.setPassword("123456");
        
        Order order1 = new Order("订单1号");
        Order order2 = new Order("订单2号");
        List<Order> list = new ArrayList<>();
        list.add(order1);
        list.add(order2);
        user.setList(list);
    
        System.out.println(JSON.toJSONString(user));
    }
        
    @Test
    public void test02() {
        String jsonstr 
        = "{"list":[{"orderName":"订单1号"},{"orderName":"订单2号"}],"password":"123456","username":"admin"}";
        User user = JSON.parseObject(jsonstr, User.class);
        System.out.println(user.getUsername());
        System.out.println(user.getPassword());
        
        List<Order> list = user.getList();
        for(Order order : list) {
            System.out.println(order.getOrderName());
        }
    }

    三、Jedis 的学习

    public class RedisDemo {
        @Test
        public void test01() {
            // 1.连接redis数据库
            Jedis jedis = new Jedis("127.0.0.1",6379);
            jedis.set("k1","Hello Redis!!!");
            // 2.获取数据(通过键获取值)
            System.out.println(jedis.get("k1"));
            // 3.创建数据(键值对)
            jedis.hset("order:100", "item:1","订单明细一");
            jedis.hset("order:100", "item:2","订单明细二");
            // 4.关闭redis数据库
            jedis.close();
        }
        
        @Test 
        public void test02() {
            // 1.创建 Jedis连接
            Jedis jedis = new Jedis("127.0.0.1",6379);
            // 2.获取数据
    //        String detail = jedis.hget("order:100", "item:2");
    //        System.out.println(detail);
            Map<String,String> map = jedis.hgetAll("order:100");
            Set<String> set = map.keySet();
            for(String key : set) {
                System.out.println(key + "-->" + map.get(key));
            }
            jedis.close();
        }
        
        @Test
        public void test03() {
            Map<String, String> map = new HashMap<>();
            map.put("k1", "Hello");
            map.put("k2","World");
            map.put("k3","Spring");
            map.put("k1","中国");
    //        System.out.println(map.get("k1"));
    //        System.out.println(map.get("k2"));
    //        System.out.println(map.get("k3"));
    //        System.out.println(map.get("k4"));
            
            // 获取到所有的键(key)集合
    //        Set<String> set = map.keySet();
    //        for(String key : set) {
    //            System.out.println(key + "->" + map.get(key));
    //        }
            // 获取所有键值对(key->value)集合
            Set<Map.Entry<String, String>> set = map.entrySet();
            for(Map.Entry<String, String> entry : set) {
                System.out.println(entry.getKey() + "->" + entry.getValue());
            }
        }
    }
  • 相关阅读:
    sql优化
    多字段in
    最大值对应的行数据
    spring boot admin
    git + idea 操作
    css 多行溢出显示省略号失效
    Android输入系统(7)——Linux input子系统代码分析与调试 Hello
    Java中的正则表达式 Hello
    mybatis 中文路径报错处理
    React 18 之 useTransition
  • 原文地址:https://www.cnblogs.com/AardWolf/p/10955820.html
Copyright © 2020-2023  润新知