一、定义工程

创建一个spring boot模块

二、修改pom文件

在pom文件中添加Spring Boot与Redis整合依赖


  1. <dependencies>
  2. <!--spring boot与redis整合依赖-->
  3. <dependency>
  4. <groupId>org.springframework.boot</groupId>
  5. <artifactId>spring-boot-starter-data-redis</artifactId>
  6. </dependency>
  7. <dependency>
  8. <groupId>org.projectlombok</groupId>
  9. <artifactId>lombok</artifactId>
  10. </dependency>
  11. <!--mybatis与spring boot整合依赖-->
  12. <dependency>
  13. <groupId>org.mybatis.spring.boot</groupId>
  14. <artifactId>mybatis-spring-boot-starter</artifactId>
  15. <version>1.3.2</version>
  16. </dependency>
  17. <!--mysql驱动-->
  18. <dependency>
  19. <groupId>mysql</groupId>
  20. <artifactId>mysql-connector-java</artifactId>
  21. <version>5.1.47</version>
  22. </dependency>
  23. <!-- druid驱动 -->
  24. <dependency>
  25. <groupId>com.alibaba</groupId>
  26. <artifactId>druid</artifactId>
  27. <version>1.1.12</version>
  28. </dependency>
  29. <!--tomcat内置的JSP解析器-->
  30. <dependency>
  31. <groupId>org.apache.tomcat.embed</groupId>
  32. <artifactId>tomcat-embed-jasper</artifactId>
  33. </dependency>
  34. <dependency>
  35. <groupId>org.springframework.boot</groupId>
  36. <artifactId>spring-boot-starter-web</artifactId>
  37. </dependency>
  38. <dependency>
  39. <groupId>org.springframework.boot</groupId>
  40. <artifactId>spring-boot-starter-test</artifactId>
  41. <scope>test</scope>
  42. </dependency>
  43. </dependencies>
  44. <build>
  45. <resources>
  46. <!--注册dao包下mybatis映射文件为资源目录-->
  47. <resource>
  48. <directory>src/main/java</directory>
  49. <includes>
  50. <include>**/*.xml</include>
  51. </includes>
  52. </resource>
  53. <!--注册webapp目录为资源目录-->
  54. <resource>
  55. <directory>src/main/webapp</directory>
  56. <targetPath>META-INF/resources</targetPath>
  57. <includes>
  58. <include>**/*.*</include>
  59. </includes>
  60. </resource>
  61. </resources>
  62. <plugins>
  63. <plugin>
  64. <groupId>org.springframework.boot</groupId>
  65. <artifactId>spring-boot-maven-plugin</artifactId>
  66. </plugin>
  67. </plugins>
  68. </build>

三、修改主配置文件

在主配置文件中添加如下内容:


  1. # 视图的前辍与后辍
  2. spring:
  3. mvc:
  4. view:
  5. prefix: /
  6. suffix: .jsp
  7. # 注册数据源
  8. datasource:
  9. type: com.alibaba.druid.pool.DruidDataSource
  10. driver-class-name: com.mysql.jdbc.Driver
  11. url: jdbc:mysql:///test?useUnicode=true&characterEncoding=utf-8
  12. username: root
  13. password: root
  14. #编码设置
  15. http:
  16. encoding:
  17. force: true
  18. charset: utf-8
  19. enabled: true
  20. redis:
  21. host: 39.97.176.160
  22. port: 6379
  23. cache:
  24. type: redis # 指定缓存类型
  25. cache-names: realTimeCache # 指定缓存空间名称,随意
  26. server:
  27. tomcat:
  28. uri-encoding: UTF-8
  29. mybatis:
  30. # 注册映射文件
  31. mapper-locations: classpath:com/abc/dao/*.xml
  32. # 注册实体类别名
  33. type-aliases-package: com.abc.bean

四、修改实体类Student

由于要将查询的实体类对象缓存到Redis,Redis要求实体类必须序列化。所以需要实体类实现序列化接口

五、修改页面

(1) 修改index页面

(2) 修改welcome.jsp页面

六、 修改Controller类

七、修改Service接口

八、修改Service接口实现类

九、修改Dao接口

十、修改映射文件

十一、测试

注册会清空作用域realTimeCache缓存数据。

查询第一次会缓存信息,后面从Redis获取。

其他

高并发下访问Redis,存在什么问题?存在三个问题

  • 缓存穿透:为DB查询为null的数据预设一个值
  • 缓存雪崩:提前规划好缓存到期时间
  • 热点缓存:双重检测锁机制

Spring Boot中使用Redis的更多相关文章

  1. spring boot 中使用redis session

    spring boot 默认的httpsession是存在内存中.这种默认方式有几个缺点:1.当分布式部署时,存在session不一致的问题:2.当服务重启时session就会丢失,这时候用户就需要重 ...

  2. Spring Boot中使用Redis小结

    Spring Boot中除了对常用的关系型数据库提供了优秀的自动化支持之外,对于很多NoSQL数据库一样提供了自动化配置的支持,包括:Redis, MongoDB, 等. Redis简单介绍 Redi ...

  3. Spring Boot中使用redis的发布/订阅模式

    原文:https://www.cnblogs.com/meetzy/p/7986956.html redis不仅是一个非常强大的非关系型数据库,它同时还拥有消息中间件的pub/sub功能,在sprin ...

  4. Spring Boot 中集成 Redis 作为数据缓存

    只添加注解:@Cacheable,不配置key时,redis 中默认存的 key 是:users::SimpleKey [](1.redis-cli 中,通过命令:keys * 查看:2.key:缓存 ...

  5. spring boot 中使用 Redis 与 Log

    spring boot + mybatis + redis 配置 1.application.yml #配置访问的URLserver: servlet-path: /web port: spring: ...

  6. Spring Boot中使用Redis数据库

    引入依赖 Spring Boot提供的数据访问框架Spring Data Redis基于Jedis.可以通过引入spring-boot-starter-redis来配置依赖关系. <depend ...

  7. 学习Spring Boot:(十七)Spring Boot 中使用 Redis

    前言 Redis 1 是一个由Salvatore Sanfilippo写的key-value存储系统. edis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日 ...

  8. spring boot中集成Redis

    1 pom.xml文件中添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <arti ...

  9. 【redis】spring boot中 使用redis hash 操作 --- 之 使用redis实现库存的并发有序操作

    示例: @Autowired StringRedisTemplate redisTemplate; @Override public void dealRedis(Dealer dealer) { d ...

随机推荐

  1. PTA 7-7 六度空间 (30分)

    PTA 7-7 六度空间 (30分) "六度空间"理论又称作"六度分隔(Six Degrees of Separation)"理论.这个理论可以通俗地阐述为:& ...

  2. install virtualenv without sudo

    用普通用户安装virtualenv Perhaps this was valid for older versions of virtualenv. For now, if you want to r ...

  3. js深拷贝你还不会吗

    js深拷贝 在讲正题之前我们要先了解数据存储的方式 数据存储方式 在讲之前我们要先知道值类型和引用类型的存储方式. 在JavaScript数据类型中有两种数据类型. 值类型:字符串(String).数 ...

  4. js 正则表达式 验证与限制

    .... //验证身份证格式 function onIDCardsValidation(e) { if (e.isValid) { var pattern = /\d*/; if (!(e.value ...

  5. bat批处理命令及解释

    相关原文链接 一.批处理概念 批处理文件:包含DOS命令的可编辑可执行文件 批处理:可以对某一对象批量操作的文件 二.批处理命令简介 命令1~10 1 echo 和 @ 回显命令 @ #关闭单行回显 ...

  6. 这可能是你看过最详细的NodeJS安装配置教程

    博主是一枚Java菜鸡,今天在B站上看一些教程视频的时候偶尔看了一眼评论区,发现好多人在Node和Vue安装的位置卡住了,便决定今晚肝出一套最详细的NodeJS安装配置的教程 本文适合初次接触Node ...

  7. 9.3 k8s结合ELK实现日志收集

    数据流: logfile -> filebeat > kafka(依赖zookeeper)-> logstash -> elasticsearch -> kibana 1 ...

  8. R数据科学-3

    R数据科学(R for Data Science) Part 3:编程 转换--可视化--模型 --------------第13章 使用magrittr进行管道操作----------------- ...

  9. Browse Code Answers

    一个记录各种语言可能遇到的问题的论坛 :https://www.codegrepper.com/code-examples/

  10. python(3)跳过第一行(多行)读入数据

    查了下资料,常见两种办法,一是设置行号,再者是利用python自带的itertools工具. 这里推荐一种新的方法,直接使用readline()函数就搞定. 示例: 创建一个文本文件,内容如下: 1 ...