Во время стартапа проекта Springboot значение переменной, впрыскиваемой Аполлоном, является нулевымJAVA

Программисты JAVA общаются здесь
Anonymous
Во время стартапа проекта Springboot значение переменной, впрыскиваемой Аполлоном, является нулевым

Сообщение Anonymous »

Я столкнулся с проблемой, когда при использовании Apollo для введения статической переменной свойства переменная является нулевой во время запуска проекта. Однако, когда переменная изменена через Аполлон, ее значение отображается правильно. Код примерно следующим образом. < /P>
@Service
public class ApolloServiceImpl implements ApolloService {
@Value("${acc.clean.apollo.loading.num:10}")
private static Long apollo_num ;
@Value("${acc.clean.apollo.loading.num:10}")
private Long num1;

@Override
public String getApolloNum() {
return "static value:" + apollo_num + " private value:" + num1;
}
}
< /code>
Результат выполнения во время запуска проекта: Статическое значение: Null Crivate Value: 14 < /p>
Результат выполнения после изменения данных через Apollo: Статическое значение: 17 частного значения: 17 < /p>
Я понимаю, что способ введения статического переменного в коде. Тем не менее, я хочу знать причину этого явления (данные являются нулевыми во время запуска проекта, но верны после модификации). Я подозреваю, что это из -за порядка загрузки данных конфигурации.

Подробнее здесь: https://stackoverflow.com/questions/795 ... jected-var

Вернуться в «JAVA»