1、说明

git地址: https://github.com/leezhang0525/boot
branch:1.1.2redis
本文档持续更新,目标为多组件系统,常用组件集成完毕后,后续会添加分布式内容。

本文使用windows环境的redis,下载安装流程请自行百度

1、window 启动redis 服务

1、打开一个命令窗口,通过 cd 命令进入到你解压的目录
2、输入命令:redis-server redis.windows.conf ,启动 Redis,成功后会告诉你端口号为6379
3、部署 redis 为 windows 下的服务,关掉上一个窗口(否则会启动不了服务),再打开一个新的命令窗口,
输入命令:redis-server —service-install redis.windows.conf
4、安装后的启动服务命令:redis-server —service-start
5、测试Redis,通过 cd 命令进入到你解压的目录,敲击命令redis-cli,通过set,get 命令查看查看是否成功。

常用的服务命令
卸载服务:redis-server —service-uninstall
开启服务:redis-server —service-start
停止服务:redis-server —service-stop

2、redis 设置密码

1、设置临时密码(关闭或者重启redis服务,那么设置的密码就不生效了
1、reids 启动后,进入redis目录,执行redis-cli.exe
1650620061(1).png
2、设置密码 config set requirepass 123456
3、需要使用auth重新登录 auth 123456
4、检查密码设置成功 config get requirepass
2、设置永久密码
1、打开redis.windows.conf 文件
2、搜索 requirepass,找到requirepass这一行,去掉注释,添加需要的密码
1650620509(1).png
3、保存,重启redis服务

2、添加依赖及修改yml文件

  1. server:
  2. port: 8081
  3. spring:
  4. datasource:
  5. master:
  6. url: jdbc:mysql://localhost:3306/pay?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useLocalSessionState=true
  7. username: root
  8. password: 123456
  9. driver-class-name: com.mysql.jdbc.Driver
  10. type: com.alibaba.druid.pool.DruidDataSource
  11. slave:
  12. url: jdbc:mysql://localhost:3306/payslave?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useLocalSessionState=true
  13. username: root
  14. password: 123456
  15. driver-class-name: com.mysql.jdbc.Driver
  16. type: com.alibaba.druid.pool.DruidDataSource
  17. redis:
  18. host: localhost
  19. port: 6379
  20. database: 0
  21. password: 123456
  22. timeout: 3S
  23. logging:
  24. level:
  25. root: debug
  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-data-redis</artifactId>
  4. <version>${redis.version}</version>
  5. </dependency>
  6. <redis.version>2.6.5</redis.version>

3、编写测试service类

  1. package com.zhangsan.boot.impl;
  2. import lombok.extern.slf4j.Slf4j;
  3. import org.springframework.beans.factory.annotation.Autowired;
  4. import org.springframework.data.redis.core.RedisTemplate;
  5. import org.springframework.data.redis.core.StringRedisTemplate;
  6. import org.springframework.stereotype.Service;
  7. import javax.annotation.Resource;
  8. import java.util.UUID;
  9. import java.util.concurrent.TimeUnit;
  10. @Service("redisTemplateService")
  11. @Slf4j
  12. public class RedisTemplateServiceImpl {
  13. private static final String TEST_REDIS_KEY_PREFIX = "test:redis:";
  14. @Autowired
  15. private StringRedisTemplate redisTemplate;
  16. public String setKey (String param){
  17. String key = TEST_REDIS_KEY_PREFIX+param;
  18. String value = UUID.randomUUID().toString().replace("-","");
  19. Boolean res = redisTemplate.opsForValue().setIfAbsent(key,value,200, TimeUnit.SECONDS);
  20. if(res){
  21. return "success";
  22. }else {
  23. return "fail";
  24. }
  25. }
  26. }
  1. @Autowired
  2. private RedisTemplateServiceImpl redisTemplateService;
  3. @GetMapping("/redisTest")
  4. public String redisTest(String param){
  5. return redisTemplateService.setKey(param);
  6. }

添加成功

1650621329(1).png

4、注意项

1、没有设置redis 密码,配置文件中却写了密码会报错
1650619731(1).png
解决方案:
1、删除密码配置,改为

  1. spring:
  2. redis:
  3. host: localhost
  4. port: 6379
  5. database: 0
  6. timeout: 3S

2、设置redis密码(参考说明2)