zoukankan      html  css  js  c++  java
  • 2020/03/21-Redis(1)

    1.1SpringBoot整合Redis

    在互联网项目中经常把高频使用的数据会缓存起来,而redis是大多数项目优先考虑的一款非关系型数据库,

    我们使用Redis都是采用的Jedis客户端,不过既然我们使用了SpringBoot,我就就使用Spring对Redis封装的套件,谁呢?是Spring Data Redis

    Spring Data Redis,是Spring Data 家族的一部分。 对Jedis客户端进行了封装,与spring进行了整合。可以非常方便的来实现redis的配置和操作。

    1.1.1.RedisTemplate基本操作

    与以往学习的套件类似,Spring Data 为 Redis 提供了一个工具类:RedisTemplate。里面封装了对于Redis的五种数据结构的各种操作,包括:

    • redisTemplate.opsForValue() :操作字符串
    • redisTemplate.opsForHash() :操作hash
    • redisTemplate.opsForList():操作list
    • redisTemplate.opsForSet():操作set
    • redisTemplate.opsForZSet():操作zset
      例如我们对字符串操作比较熟悉的有:get、set等命令,这些方法都在 opsForValue()返回的对象中有:

      其它一些通用命令,如del,可以通过redisTemplate.xx()来直接调用。

    1.1.2.StringRedisTemplate

    RedisTemplate在创建时,可以指定其泛型类型:

    • K:代表key 的数据类型
    • V: 代表value的数据类型

    注意:这里的类型不是Redis中存储的数据类型,而是Java中的数据类型,RedisTemplate会自动将Java类型转为Redis支持的数据类型:字符串、字节、二二进制等等。

    不过RedisTemplate默认会采用JDK自带的序列化(Serialize)来对对象进行转换。生成的数据十分庞大,因此一般我们都会指定key和value为String类型,这样就由我们自己把对象序列化为json字符串来存储即可。

    因为大部分情况下,我们都会使用key和value都为String的RedisTemplate,因此Spring就默认提供了这样一个实现:

    Redis启动器的依赖

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

    在resources下添加application.yml文件,内容如下

    spring:
      redis:
        host: 127.0.0.1
        port: 6379
    
  • 相关阅读:
    SpringMvc最全的约束——你的感冒清个人总结
    spring配置文件比较全的约束
    android 发送邮件--实现 send email for android
    android异常 More than one file was found with OS independent path 'META-INF/XXX'
    android异常 More than one file was found with OS independent path 'META-INF/XXX'
    Error:(949) Multiple substitutions specified in non-positional format; Android格式化string.xml
    Android 设置ImageView全屏
    Android 设置ImageView全屏
    git的使用之eclipse Hbuilder
    git的使用之eclipse Hbuilder
  • 原文地址:https://www.cnblogs.com/ShenYian/p/12542370.html
Copyright © 2011-2022 走看看