JAVA常用工具类(一)--------------RedisConfig工具类

本文详细介绍了一种流行的Redis可视化应用程序及其运行状态,包括数据库结构和存储格式。此外,还深入探讨了如何通过工具类实现Redis的配置和使用,涉及依赖注入、参数设置及RedisTemplate的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis缓存用的越来越多,那么我们是如何使用的Redis?

 

一,redis的可视化app

这个是目前比较流行的redis可视化app。

这是运行状态的redis,一共拥有16个数据库,默认存储在db0里面。具体存储的格式,我在 Redis实用教程-----------菜鸟快速入门里面做过介绍,感兴趣的可以看看。

二,工具类的实现

1,首先在工具类的包里面创建自己工具类

2,涉及到的redis参数和导包,我们需要在application.properties进行配置

            <dependency>
				<groupId>redis.clients</groupId>
				<artifactId>jedis</artifactId>
				<version>2.9.0</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.data</groupId>
				<artifactId>spring-data-redis</artifactId>
				<version>1.8.0.RELEASE</version>
			</dependency>
  @Value(value = "${redis.maxIdle}")
    private int redisMaxIdle;

    @Value(value = "${redis.maxTotal}")
    private int redisMaxTotal;

    @Value(value = "${redis.maxWaitMillis}")
    private int redisMaxWaitMillis;

    @Value(value = "${redis.ip}")
    private String redisIp;

    @Value(value = "${redis.master}")
    private String redisMaster;

    @Value(value = "${redis.timeOut}")
    private int redisTimeOut;

 

上面的这些参数,我已经做过修改,所以不是硬编码,大家写代码的时候也应该注意点,

3,注入bean的形式编写代码(因为参数很多,只需要截取自己需要的参数与就ok了)

JedisPoolConfig注入配置
 @Bean
    public JedisPoolConfig jedisPoolConfig() {
        JedisPoolConfig jedisPoolConfig = null;
        try {
            jedisPoolConfig = new JedisPoolConfig();
            jedisPoolConfig.setMaxIdle(redisMaxIdle);
            jedisPoolConfig.setMaxTotal(redisMaxTotal);
            jedisPoolConfig.setMaxWaitMillis(redisMaxWaitMillis);
            jedisPoolConfig.setTestOnBorrow(false);
        } catch (Exception e) {
            log.error("jedisPoolConfig有问题", e);
        }
        return jedisPoolConfig;
    }
RedisSentinelConfiguration配置
 @Bean
    public RedisSentinelConfiguration redisSentinelConfiguration() {
        Set<String> sentinelHostAndPorts = new HashSet<>();
        sentinelHostAndPorts.add(redisIp);
        return new RedisSentinelConfiguration(redisMaster, sentinelHostAndPorts);
    }
JedisConnectionFactory配置

 

 @Bean
    public JedisConnectionFactory jedisConnectionFactory(
            JedisPoolConfig jedisPoolConfig, RedisSentinelConfiguration redisSentinelConfiguration{
        JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory(redisSentinelConfiguration, jedisPoolConfig);
        jedisConnectionFactory.setTimeout(redisTimeOut);
        jedisConnectionFactory.setDatabase(12);
        return jedisConnectionFactory;
    }
RedisTemplate配置
 @Bean
    public RedisTemplate<String, String> redisTemplate(JedisConnectionFactory jedisConnectionFactory) {
        RedisTemplate<String, String> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(jedisConnectionFactory);
        return redisTemplate;
    }

4使用的时候可以new,也可以注入

 @Autowired
    private RedisTemplate<String, String> redisTemplate;
 RedisTemplate<String,String> redisTemplate =new RedisTemplate<>();
 private RedisTemplate<String,String> redisTemplate;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值