redis学习

飞一样的编程
飞一样的编程
擅长邻域:Java,MySQL,Linux,nginx,springboot,mongodb,微信小程序,vue

分类: Linux 专栏: 爱旅行项目 标签: redis学习

2023-02-13 14:22:00 1313浏览

Redis是一个非关系型数据库,基于内存的,相对于mysql读取速度非常快

是什么?

Redis是一个非关系型数据库,基于内存的,相对于mysql读取速度非常快

Linux服务器里redis安装和启动

1、解压安装包

2、进入到安装目录

3、make编译或者 make MALLOC=libc

如果报错的话,检查一下是否安装gcc

4、修改redis的配置文件redis.conf,

  • 确保宿主机能连接到虚拟主机里的redis

本机redis客户端连接虚拟主机里的Redis,需要修改下redis的配置文件,bind 默认是127.0.0.1要将其改为0.0.0.0

  • 修改成密码启动,

  • 设置以后台的形式运行

5、启动redis

image.png

redis客户端连接

  • 命令连接本地Redis

redis-cli。该命令会连接本地的 redis 服务。

常用的命令

auth 密码

flushall清除所有的数据

del key 清除某个key

ttl key 查看某个key还剩的时间(单位是秒)

set key value EX 15 设置某个键值对带过期时间(这里设置的是15s后过期)

java连接Redis

  • redis属性文件
#ip地址
redis.host=192.168.56.15
#端口号
redis.port=6379
#如果有密码
redis.password=123456
#客户端超时时间单位是毫秒 默认是2000
redis.timeout=3000
#数据库,默认的是0
redis.database=0
  • spring里的配置
  <bean class="redis.clients.jedis.JedisPoolConfig" id="jedisPoolConfig"/>

    <bean class="redis.clients.jedis.JedisPool" id="jedisPool">
        <constructor-arg name="host" value="${redis.host}"/>
        <constructor-arg name="password" value="${redis.password}"/>
        <constructor-arg name="database" value="${redis.database}"/>
        <constructor-arg name="timeout" value="${redis.timeout}"/>
        <constructor-arg name="port" value="${redis.port}"/>
        <constructor-arg name="poolConfig" ref="jedisPoolConfig"/>
    </bean>

    <bean class="cn.itrip.common.RedisAPI" id="redisAPI">
        <property name="jedisPool" ref="jedisPool"/>
    </bean>
  • redis工具类
public class RedisAPI {

    JedisPool jedisPool;
    Jedis jedis;

    public void setJedisPool(JedisPool jedisPool) {
        this.jedisPool = jedisPool;
    }

    public  void set(String key, String value, Integer expireTime){
        try {
            jedis = jedisPool.getResource();
            jedis.setex(key,expireTime,value);

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            jedisPool.returnResource(jedis);
        }
    }

    public  void set(String key, String value){
        try {
            jedis = jedisPool.getResource();
            jedis.set(key,value);

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            jedisPool.returnResource(jedis);
        }
    }




    public String get(String tokenString) {
        try {
            jedis = jedisPool.getResource();
            return jedis.get(tokenString);

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            jedisPool.returnResource(jedis);
        }


        return null;
    }

}

好博客就要一起分享哦!分享海报

此处可发布评论

评论(3展开评论

蓝色妖姬 能力:10

2023-02-14 13:45:13

李灿加油,尹志文奥力给
周杰伦 能力:10

2023-02-14 13:42:56

李灿加油 我相信你
蓝色妖姬 能力:10

2023-02-14 10:56:50

好难,不过我相信自己一定可以的
点击查看更多评论

展开评论

您可能感兴趣的博客

客服QQ 1913284695