转载:https://www.cnblogs.com/JJJ1990/p/10438292.html
一,redis安装首先,我们需要下载Windows版本的redis压缩包地址如下:
https://github.com/MicrosoftArchive/redis/releases
连接打开后,如下图所示
我们选择64位压缩包,下载后需要解压,我们解压到D盘,如下图所示:
接下来,我们需要执行一些安装命令
1.直接在上图目录中键入cmd“
2,在打开的cmd输入命令窗口 “redis-server.exe redis.windows.conf” 用于启动redis服务
(请注意,使用此命令相当于启动临时服务,如果当前窗口关闭,服务也将关闭)
3.我们再打开一个相同的cmd命令窗口,在其中键入 “redis-cli” ,这个命令的作用是启动一个redis客户端。客户端默认端口号为6379 如果我们想修改端口号,我们需要之前执行的命令conf文件redis.windows.conf 找到port 修改后续的端口号
4.检查启动客户端redis我们可以设置和读取服务是否正常,例如,我们可以执行命令 “set redis jj然后我们执行了另一个命令get redis” 前面设置的123 查询出来 ,如下图所示
5,将redis向我们注册服务Windows,继续新开一个cmd窗口,执行命令 “redis-server --service-install redis.windows.conf” 此时,提示:Redis successfully installed as a service. 成功加入服务!
六、开始注册Windows的redis服务。
六、开始注册Windows的redis服务。输入命令redis-server.exe --service-start” 可能会报错,如下图所示。原因是我们已经在这个端口绑定了一个服务,即我们之前启动的所谓临时服务。此时,我们需要关闭刚刚启动的临时服务窗口。7.如果上述错误仍然报告,我们可能需要调整注册Windows的服务为本地系统服务,而不是
网络服务,如下图所示。此外,还可能有防火墙等问题redis服务启动失败。如下图所示,服务启动ok,此时,我们正在继续操作redis客户端没有问题。二,springboot 集成redis1,新建springboot如果项目不清楚如何新建,请移动 https://www.cnblogs.com/JJJ1990/p/8384386.html
2,在pom文件中加入redis jar包的引用
我的整个项目pom注意第34-38行文件如下,即为引入的redis jar包
1 <project xmlns=\\"http://maven.apache.org/POM/4.0.0\\" xmlns:xsi=\\"http://www.w3.org/2001/XMLSchema-instance\\" 2 xsi:schemaLocation=\\"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd\\"> 3 <modelVersion>4.0.0</modelVersion> 4 5 <groupId>com</groupId> 6 <artifactId>redis</artifactId> 7 <version>0.0.1-SNAPSHOT</version> 8 <packaging>jar</packaging> 9 10 <name>redis</name>11 <url>http://maven.apache.org</url>12 13 <properties>14 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>15 </properties>16 17 <parent>18 <groupId>org.springframework.boot</groupId>19 <artifactId>spring-boot-starter-parent</artifactId>20 <version>1.5.8.RELEASE</version>21 </parent>22 23 <dependencies>24 <dependency>25 <groupId>junit</groupId>26 <artifactId>junit</artifactId>27 <version>3.8.1</version>28 <scope>test</scope>29 </dependency>30 <dependency>31 <groupId>org.springframework.boot</groupId>32 <artifactId>spring-boot-starter-web</artifactId>33 </dependency>34 <dependency>35 <groupId>org.springframework.boot</groupId>36 <artifactId>spring-boot-starter-data-redis</artifactId>37 </dependency> 38 </dependencies>39 </project>
3,编写RedisConfig 类代码1 package com.redis; 2 3 import org.springframework.beans.factory.annotation.Value; 4 import org.springframework.context.annotation.Bean; 5 import org.springframework.context.annotation.Configuration; 6 import org.springframework.context.annotation.PropertySource; 7 import org.springframework.data.redis.connection.RedisConnectionFactory; 8 import org.springframework.data.redis.connection.jedis.JedisConnectionFactory; 9 import org.springframework.data.redis.core.RedisTemplate; 10 import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer; 11 import org.springframework.data.redis.serializer.StringRedisSerializer; 12 13 import redis.clients.jedis.JedisPoolConfig; 14 15 @Configuration 16 @PropertySource(\\"classpath:config/redis.properties\\") 17 public class RedisConfig{ 18 19 @Value(\\"${redis.maxIdle}\\") 20 private Integer maxIdle; 21 22 @Value(\\"${redis.maxTotal}\\") 23 private Integer maxTotal; 24 25 @Value(\\"${redis.maxWaitMillis}\\") 26 private 路由知识 Integer maxWaitMillis; 27 28 @Value(\\"${redis.minEvictableIdleTimeMillis}\\") 29 private Integer minEvictableIdleTimeMillis; 30 31 @Value(\\"${redis.numTestsPerEvictionRu \\") 32 private Integer numTestsPerEvictionRun; 33 34 @Value(\\"${redis.timeBetweenEvictionRunsMillis}\\") 35 private long timeBetweenEvictionRunsMillis; 36 37 @Value(\\"${redis.testOnBorrow}\\") 38 private boolean testOnBorrow; 39 40 路由网 @Value(\\"${redis.testWhileIdle}\\") 41 private boolean testWhileIdle; 42 43 44 @Value(\\"${spring.redis.cluster.nodes}\\") 45 private String clusterNodes; 46 47 @Value(\\"${spring.redis.cluster.max-redirects}\\") 48 private Integer mmaxRedirectsac; 49 50 /** 51 * JedisPoolConfig 连接池 52 * @return 53 */ 54 @Bean 55 public JedisPoolConfig jedisPoolConfig(){ 56 JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); 57 // 最大空闲数 58 jedisPoolConfig.setMaxIdle(maxIdle); 59 // 连接池最大数据库连接数 60 jedisPoolConfig.setMaxTotal(maxTotal); 61 // 最大限度地建立连接等待时间 62 jedisPoolConfig.setMaxWaitMillis(maxWaitMillis); 63 // 最小连接的最小空闲时间 默认1800000毫秒 (3