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
2、设置密码 config set requirepass 123456
3、需要使用auth重新登录 auth 123456
4、检查密码设置成功 config get requirepass
2、设置永久密码
1、打开redis.windows.conf 文件
2、搜索 requirepass,找到requirepass这一行,去掉注释,添加需要的密码
3、保存,重启redis服务
2、添加依赖及修改yml文件
server:port: 8081spring:datasource:master:url: jdbc:mysql://localhost:3306/pay?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useLocalSessionState=trueusername: rootpassword: 123456driver-class-name: com.mysql.jdbc.Drivertype: com.alibaba.druid.pool.DruidDataSourceslave:url: jdbc:mysql://localhost:3306/payslave?characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true&useLocalSessionState=trueusername: rootpassword: 123456driver-class-name: com.mysql.jdbc.Drivertype: com.alibaba.druid.pool.DruidDataSourceredis:host: localhostport: 6379database: 0password: 123456timeout: 3Slogging:level:root: debug
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><version>${redis.version}</version></dependency><redis.version>2.6.5</redis.version>
3、编写测试service类
package com.zhangsan.boot.impl;import lombok.extern.slf4j.Slf4j;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.data.redis.core.RedisTemplate;import org.springframework.data.redis.core.StringRedisTemplate;import org.springframework.stereotype.Service;import javax.annotation.Resource;import java.util.UUID;import java.util.concurrent.TimeUnit;@Service("redisTemplateService")@Slf4jpublic class RedisTemplateServiceImpl {private static final String TEST_REDIS_KEY_PREFIX = "test:redis:";@Autowiredprivate StringRedisTemplate redisTemplate;public String setKey (String param){String key = TEST_REDIS_KEY_PREFIX+param;String value = UUID.randomUUID().toString().replace("-","");Boolean res = redisTemplate.opsForValue().setIfAbsent(key,value,200, TimeUnit.SECONDS);if(res){return "success";}else {return "fail";}}}
@Autowiredprivate RedisTemplateServiceImpl redisTemplateService;@GetMapping("/redisTest")public String redisTest(String param){return redisTemplateService.setKey(param);}
4、注意项
1、没有设置redis 密码,配置文件中却写了密码会报错
解决方案:
1、删除密码配置,改为
spring:redis:host: localhostport: 6379database: 0timeout: 3S
2、设置redis密码(参考说明2)

