(1)引入jar包
(2)Redis工具类-注入redisTemplate操作redis
@Component
public class RedisUtil implements InitializingBean{
private RedisUtil() {
}
private static RedisUtil instance = null;
@Autowired
private RedisTemplate redisTemplate;
public synchronized static RedisUtil getInstance() {
if(instance==null) {
instance = new RedisUtil();
}
return instance;
}
@Bean
private ApplicationContext getApp() {
return ApplicationContextUtil.getApplicationContext();
}
@PostConstruct
public void init() {
System.out.println("@PostConstruct..");
if(instance == null) {
instance = getInstance();
}
instance.redisTemplate = redisTemplate;
initRedisTemplate();
}
//设置redistemplate的序列化器
private void initRedisTemplate(){
System.out.println("默认key序列化器:"+ApplicationContextUtil.getApplicationContext()+instance.redisTemplate.getKeySerializer());
System.out.println("默认value序列化器:"+instance.redisTemplate.getValueSerializer());
RedisSerializer rs = instance.redisTemplate.getStringSerializer();
instance.redisTemplate.setKeySerializer(rs);
instance.redisTemplate.setValueSerializer(rs);
}
public void afterPropertiesSet() throws Exception {
System.out.println("InitializingBean..");
}
public String get(String key) {
byte[] bval = instance.redisTemplate.getConnectionFactory().getConnection().get(key.getBytes());
return new String(bval);
}
}
(3)redis配置:
spring.redis.host=192.168.191.128
spring.redis.port=6379
(4)调用
String val = RedisUtil.getInstance().get("product.num");
1.redis.clients.jedis.exceptions.JedisDataException:
DENIED Redis is running in protected mode because protected mode is enabled,
no bind address was specified, no authentication password is requested to clients.
protected-mode no
设置密码访问模式
在redis.conf中加入一行密码设置
require 你的密码
保存,再重新启动redis客户端