@Value("${redis.ip}") private static String redis_ip; @Value("${redis.port}") private static int redis_port = 6379;
@PostConstruct void init() { // TODO jedis = getJedis(redis_ip, redis_port); }
入上图所示,init方法:redis_ip值总是为空
原因:PostConstruct 是在实例化之后,才会执行,而static在加载时就会赋值,这个时候 还没有拿配置文件的数据,导致为null。
解决方案:把变量的static修饰符去除,就可以了