在pom.xml导入jedis包
<!--redis客户端--> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
单机版
在resources下创建redis.properties文件,里面配置自己的redis的ip和端口号 ,如果自己想设置其它的属性的话也可以自己加几个
然后往ioc容器中加入JedisPool对象,因为使用了springboot了,就最好不用使用spring配置文件了,所以就使用java类注解方式创建这个对象
package com.buba.configuration; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.PropertySource; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; @SpringBootConfiguration @PropertySource(value = {"classpath:redis/redis.properties"}) public class RedisConfiguration { @Value("${redis.node.maxTotal}") private Integer maxTotal; @Value("${redis.node.host}") private String host; @Value("${redis.node.port}") private Integer port; public JedisPoolConfig jedisPoolConfig(){ //这个是修改redis性能的时候需要的对象 JedisPoolConfig jedisPoolConfig = new JedisPoolConfig(); jedisPoolConfig.setMaxTotal(maxTotal); return jedisPoolConfig; } @Bean //这个注解注入工厂的名称是方法名 public JedisPool jedisPool(){ JedisPoolConfig jedisPoolConfig = jedisPoolConfig(); return new JedisPool(jedisPoolConfig,host,port); } }
然后进行测试
集群版
同样先导包,相同的包
然后写配置文件
然后写配置类,没啥逻辑就是把字符串按照那格式分割开
package com.buba.configuration; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringBootConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.PropertySource; import redis.clients.jedis.HostAndPort; import redis.clients.jedis.JedisCluster; import java.util.HashSet; import java.util.Set; @SpringBootConfiguration @PropertySource(value = {"classpath:redis/redisCluster.properties"}) public class RedisClusterConfiguration { @Value("${redis.cluster.nodes}") private String nodes; @Bean public JedisCluster jedisCluster(){ Set<HostAndPort> set = new HashSet<>(); HostAndPort hp = null; String[] nodeStr = nodes.split(","); if(nodeStr!=null&&nodeStr.length>0){ for(int i=0;i<nodeStr.length;i++){ String[] hostPort = nodeStr[i].split(":"); if(hostPort!=null&&hostPort.length>0){ hp = new HostAndPort(hostPort[0],Integer.valueOf(hostPort[1])); set.add(hp); } } } JedisCluster jedisCluster = new JedisCluster(set); return jedisCluster; } }