Redis增删改查示例

数据库产品这么多,归根到底还是为了更好的存储,集中管理,与数据共享,另外还有高可用,高性能,容错性等等。
上一篇文章最后介绍了Redis,作为一种内存数据库,它的应用十分的广泛,它存储的是一种K-V结构的记录。学习一个数据库首先抓住重点就是学会如何使用增删改查,这次来演示下如何Java构建Redis的增删改查。Redis的集群还有工作原理暂时不做探讨。
1首先去Redis官网下载Redis官网
或者去Github找开源库下载下来,打开redis server服务,然后显示如下界面:
这里写图片描述说明redis服务已经打开。
2.然后我们构建maven项目:
PS:具体客户端的版本可以去maven中央仓库查看选择

        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>2.8.1</version>
        </dependency>

然后编写Java客户端:

package com.redis_demo;

import java.util.Set;

import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoolConfig;

/**
 * @author micro_hz
 */
public class RedisClient {
    private static JedisPool pool;
    private static Jedis jedis;

    static {
        pool = new JedisPool(new JedisPoolConfig(), "localhost");
        jedis = pool.getResource();
    }

    public static void main(String[] args) {
        RedisClient client = new RedisClient();

        println("清空redis数据库");
        jedis.flushDB();

        println("**********分割线*********");

        // 增加
        println("添加两条记录");
        client.insert("name", "micro");
        client.insert("age", "23");

        println("查询打印所有记录");
        printAllRecord("*");

        println("根据key去查询对应的value");
        System.out.println("name = >>" + client.getValByKey("name"));
        System.out.println("age = >>" + client.getValByKey("age"));

        // 删除
        println("删除数据age");
        client.deleteByKey("age");
        System.out.println("age = >>" + (client.getValByKey("age") != null ? "未被删除" : "不存在"));
        ;
        // 打印所有记录
        printAllRecord("*");

        // 修改
        println("修改name的value");
        client.updateByKey("name", "mapc");
        System.out.println("name = >> " + client.getValByKey("name"));

        // 查询修改后name的值
        System.out.println("name = >> " + client.getValByKey("name"));
    }

    // 插入对象
    public void insert(String k, String v) {
        jedis.set(k, v);
    }

    // 删除对象
    public void deleteByKey(String k) {
        jedis.del(k);
    }

    // 修改对象
    public void updateByKey(String k, String v) {
        jedis.set(k, v);
    }

    // 查询对象
    public String getValByKey(String k) {
        return jedis.get(k);
    }

    public static void printAllRecord(String key) {
        Set<String> records = jedis.keys(key);
        for (String r : records) {
            System.out.println("key = " + r + ",value = " + jedis.get(r));
        }
    }

    private static void println(String msg) {
        System.out.println(msg);
    }
}

打印结果:

清空redis数据库
**********分割线*********
添加两条记录
查询打印所有记录
key = name,value = micro
key = age,value = 23
根据key去查询对应的value
name = >>micro
age = >>23
删除数据age
age = >>不存在
key = name,value = micro
修改name的value
name = >> mapc
name = >> mapc

后续可能会补充redis集群的配置以及实例,感兴趣可以继续关注本博客。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值