悲伤的小霉 2021-04-21 21:23 采纳率: 0%
浏览 59

遇到个很奇怪的问题,application.properties文件里面配置redis,写成spri

遇到个很奇怪的问题,application.properties文件里面配置redis,写成spring.redis.xxx项目就报错了,必须去掉spring.的前缀,直接从redis开始写项目才能正常运行。 虽然idea提升报错,但是程序是正常的。如果加上spring的前缀,idea是没报错了,程序运行就会出错。
  • 写回答

1条回答 默认 最新

  • 码农阿豪@新空间 优质创作者: Java、后端开发技术领域 2024-07-15 08:35
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    问题分析:
    1. 属性配置文件application.properties中配置redis时,应该使用spring.redis.xxx的格式,但实际上必须去掉spring.前缀才能正常运行。
    2. IDEA提醒报错,但实际程序运行是正常的。
    3. 如果加上spring的前缀,IDEA不报错,但程序运行会出错。 解决方案:
    4. 首先确认配置文件路径和文件名是否正确,确保application.properties被正确加载。
    5. 检查代码中读取配置的方式是否正确,是否采用了springboot的自动装配。
    6. 确认是否存在多个redis相关配置,可能会导致冲突。
    7. 可以尝试使用@ConfigurationProperties注解来注入配置,确保正确读取redis配置。 示例代码: application.properties中配置redis:
    redis.host=127.0.0.1
    redis.port=6379
    

    Java类引用配置:

    import org.springframework.boot.context.properties.ConfigurationProperties;
    import org.springframework.stereotype.Component;
    @Component
    @ConfigurationProperties(prefix = "redis")
    public class RedisProperties {
        private String host;
        private int port;
        // 省略getter和setter方法
    }
    

    使用配置:

    @Autowired
    private RedisProperties redisProperties;
    public void someMethod() {
        String host = redisProperties.getHost();
        int port = redisProperties.getPort();
    }
    

    通过以上步骤可以解决配置redis时出现的问题。如果问题仍无法解决,可以考虑检查其他可能导致的原因,如版本兼容性等。

    评论

报告相同问题?