针对项目当中缓存数据库的使用

一.首先针对缓存介绍redis缓存数据库。

1.redis缓存数据库个人理解介绍

1.1.redis缓存数据库是开源免费,是一个高性能的key-value结构的数据库,同时还提供list、set、zset、hash等数据结构的存储;string类型是redis最基本的类型,string类型是二进制安全的,也就是说redis的string类型可以包括任何对象(包括.jpg图片对象),string类型的值最大能存512MB大小;

1.2.redis支持持久化数据存储,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载使用,支持数据备份(master-slave模式的数据备份);

1.3.redis有极高的性能(读的速度是11万每秒,写的速度是8万1千每秒);

1.4.redis的所有操作都具有原子性(要么全部执行成功,要么全部执行失败完全不执行);单个操作支持原子性,多个操作也支持事务,即原子性(通过multi和exec指令包起来);

1.5.redis还具有丰富的特性,之后在具体介绍。

二.redis支持多语言的API,下面只介绍java对象当中的redis对象的使用

2.1.连接池自动管理,提供了一个高度封装的“org.springframework.data.redis.core.RedisTemplate”类

 @Resource
    private RedisTemplate<String, Serializable> redisLettuceTemplate;

向该项目的更新版本的类当中注入此对象,并使用该对象的一些方法。

2.2.介绍redisTemplate类的方法的使用

2.2.1.opsForValue()方法的使用

该方法的返回值对象为ValueOperations<K, V>,该对象是根据key值来操作value。

其中包括:

2.2.1.1.(.get(key))根据key去获取数据库当中的value值

2.2.1.2.(.get(key,long start,long end))根据key值去获取对应value的下标为start到end所对应的字符串

2.2.1.3.(.set(key,value))新增存储一个字符串

2.2.1.4.(.getAndSet(key,value))根据传入的key值去更改为传入的value值

2.2.1.5.(.append(key,value))在已存储的key基础上,对value值之后拼接该value值

2.2.1.6.(.size(key))获取对应key的字符串的大小

2.2.1.7.(.rncrement(key,double))以增量的方式将double值存储在变量中

2.2.1.8.(.rncrement(key,long))以增量的方式将long值存储在变量中

2.2.1.9.(.setlfAbsent(key,value))如key不存在则新增,存在则不改变原有的值

2.2.1.10.(.set(key,value,long TimeOut,TimeUnit unit))设置变量值的过期时间(例(set("timeOutValue","timeOut",5,TimeUnit.SECONDS))

2.2.1.11.(.set(key,value,long))覆盖从指定位置开始的值

2.2.1.12.(.multiSet(Map<? extends K,? etends V> map))设置map集合到redis

2.2.1.13.(.multiGet(Collection<K> keys))根据集合keys取出对应的value值

2.2.1.14.(.multiSetIfAbsent(Map<? extends K,? extends V> map))如果对应的map集合不存在则添加,存在则不做更改

2.2.2.(.expire(key,timeout,TimeUnit))重新设置过期时间(例(expire(key,5,TimeUnit.SECONDS)))时间单位为分钟

2.2.3.(.convertAndSend(String,Object))向通道发送消息的方法(此处需要中间件publish或者subscribe)

三.项目当中pom.xml文件的应用

    <dependencies>
        <!-- spring boot 配置 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
    </dependencies>

四.配置文件(application.properties文件)

# Redis数据库索引(默认为0)
spring.redis.database=0  
# Redis服务器地址
spring.redis.host=127.0.0.1
# Redis服务器连接端口
spring.redis.port=6379  
# Redis服务器连接密码(默认为空)
spring.redis.password=
# 连接池最大连接数(使用负值表示没有限制)
spring.redis.pool.max-active=8  
# 连接池最大阻塞等待时间(使用负值表示没有限制)
spring.redis.pool.max-wait=-1  
# 连接池中的最大空闲连接
spring.redis.pool.max-idle=8  
# 连接池中的最小空闲连接
spring.redis.pool.min-idle=0  
# 连接超时时间(毫秒)
spring.redis.timeout=0  
发布了43 篇原创文章 · 获赞 37 · 访问量 8750

猜你喜欢

转载自blog.csdn.net/Feng0811xin/article/details/99300795
今日推荐