一.centos上yum安装配置redis
1.yum命令安装redis
yum install -y redis
2.修改配置文件redis.conf(yum安装redis的配置文件:/etc/redis.conf)
bind 127.0.0.1修改成 bind 0.0.0.0
设置redis连接密码
requirepass:newpassword
3.启动redis服务
service redis start
二.springboot操作redis
1.application.yml配置redis的各项属性
spring:
redis:
database: 0
host: localhost
port: 6379
password: password
jedis:
pool:
max-active: 8
max-wait: -1
max-idle: 8
min-idle: 0
timeout: 0
(2)JAVA注册配置
@Configuration
@EnableCaching
public class RedisConfig extends CachingConfigurerSupport {
@Value("${spring.redis.host}")
private String host;
@Value("${spring.redis.port}")
private int port;
@Value("${spring.redis.timeout}")
private int timeout;
@Value("${spring.redis.password}")
private String password;
@Value("${spring.redis.database}")
private int database;
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
objectMapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);
jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.afterPropertiesSet();
return redisTemplate;
}
/**
* 设置连接属性
* @return
*/
@Bean
public JedisConnectionFactory redisConnectionFactory() {
JedisConnectionFactory factory = new JedisConnectionFactory();
factory.setHostName(host);
factory.setPort(port);
factory.setPassword(password);
//存储的库
factory.setDatabase(database);
//设置连接超时时间
factory.setTimeout(timeout);
factory.setUsePool(true);
return factory;
}
}
(3)Java调用redis接口进行增删查操作demo
@RestController
public class RedisResource {
private final static Logger log = LoggerFactory.getLogger(RedisResource.class);
@Autowired
RedisTemplate<Object,Object> redisTemplate;
/**
* 增加信息
* @param param
* @return
*/
@PostMapping("/info/add")
public String infoAdd(@RequestBody HomeUrlVO parma){
log.info("url:/info/add");
redisTemplate.opsForValue().set("info",parma);
return "SUCCESS";
}
/**
*查询信息
*
*/
@GetMapping("/info/get")
public String infoGet(){
log.info("url:/info/get")
return redisTemplate.opsForValue().set("info").toString;
}
/**
*删除信息
*
*/
@DeleteMapping("/delete/get")
public String infoDelete(){
log.info("url:/info/delete")
redisTemplate.delete("info");
return "SUCCESS";
}
}
三.redis可视化工具
redisDesktopManager