Как правильно использовать application.properties в TelegramBotsApi?

Пишу бота и хочу чтобы некоторые данные он брал из application.properties, но не ясно где правильно указывать @PropertySource, поскольку ни в конфиг классе, ни в классе бота эта аннотация не работает.

Класс настроек бота:

public class Schedule_U32_bot extends TelegramLongPollingBot{
   //Вот тут мне нужно инициализировать переменную с данными из application.properties
   String foo; 

    
    @SuppressWarnings({ "unused"})
    @Override
    public void onUpdateReceived(Update update) {...}

    @Override
    public String getBotUsername() {...}
    @Override
    public String getBotToken() {...}
    public void sendMessage(Update update, String text) {
        try {
            execute (SendMessage.builder()
            .parseMode("Markdown")
            .chatId(update.getMessage()
            .getChatId())
            .text(text)
            .build());
        } catch (TelegramApiException e) {
            e.printStackTrace();
        }
    }
}

Класс конфиг бота:

@Configuration
public class AppBotConfig {
    
    public Schedule_U32_bot createBotSchedule_U32_bot() {
        return new Schedule_U32_bot();
    }
    
    @Bean("Schedule_U32_botRegistration")
    public void registrationBotSchedule_U32_bot() {
        TelegramBotsApi TelegramBot;
        try {
            TelegramBot = new TelegramBotsApi(DefaultBotSession.class);
            Schedule_U32_bot bot = createBotSchedule_U32_bot();
            TelegramBot.registerBot(bot);
            System.out.println("\n"+bot.getBotUsername()+" -> успешно запущен");
        } catch (TelegramApiException e1) {
            e1.printStackTrace();
        }
    }

BootApplication класс:

@SuppressWarnings("unused")
@SpringBootApplication
public class BotsApplication {

    @SuppressWarnings("resource")
    public static void main(String[] args) throws ClassNotFoundException {
        SpringApplication application = new SpringApplication(BotsApplication.class);
        application.setBanner(new CustomBanner()); 
        application.run(args);
        
        ApplicationContext context = new AnnotationConfigApplicationContext(AppBotConfig.class);
        context.getBean("Schedule_U32_botRegistration");
    }
}

Ответы (2 шт):

Автор решения: Ewrey

В классе-конфиге надо вводить аннотацию указывающую на .properties, и оттуда брать переменные через @Value

→ Ссылка
Автор решения: DmitriyD

Используйте аннотацию @Value, только в вашем случае вам нужно будет получать значение из конфига в конфигурационном классе и передать значение в параметры конструктора класса Schedule_U32_bot.

То есть в конфигурационном классе над переменной вешаете аннотацию @Value("${foo}") и в application.properties указываете эту проперти как foo=value

→ Ссылка