Форум программистов, компьютерный форум, киберфорум
Java: Spring, Spring Boot
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
9 / 9 / 6
Регистрация: 08.01.2013
Сообщений: 578

Spring - запустить инициализацию конфига FireBase только один раз

30.12.2018, 22:53. Показов 2332. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго дня!
Ковыряю Spring на тему взаимодействия с FireBase, в частности FCM - отправка уведомлений.
Там есть момент когда надо загрузить конфиг из Json
В частности вот он. Файл лежит в ресурсах пакета из которого и происходит инициализация.

Java
1
2
3
4
5
6
7
8
9
10
11
12
 private static void fbInit() {
        try {
            InputStream is = new SendGCMMessage().getClass().getClassLoader().getResourceAsStream("file.json");
            FirebaseOptions options = new FirebaseOptions.Builder()
                    .setCredentials(GoogleCredentials.fromStream(is))
                    .setDatabaseUrl("https://renta-fa067.firebaseio.com/")
                    .build();
            FirebaseApp.initializeApp(options);
        } catch (Exception e) {
            //e.printStackTrace();
        }
    }
Для теста я его загружаю ровно перед отправкой уведомления, однако понимаю что это есть очень плохо, т.к. при следующей отправле вновь его грузит...

Как бы это средствами Spring запускать загрузку канфига ровно один раз при запуске самого приложения (приложение на сервере Tomcat лежит).

За ранее спасибо.

PS: Есть идея запускать в планировщике, при загрузке (<beans:bean id="scheduler" class="ccc.zzz.Cron"/>) (http://ts-soft.ru/blog/spring-scheduler), но тут нет разовой загрузки - только установить запуск через период и задать его не меньше 30 суток - если возможно...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.12.2018, 22:53
Ответы с готовыми решениями:

Программа не компилируется (не запускается) во второй раз (то есть только один раз)
почему у меня всего лишь один раз могу запустить программу через команду Run, когда хочу еще раз нажать Run не получается через средство...

Считывание конфига через Spring
Всем привет! Есть вот такая задача: на каждой из машин в одной и той же директории (назовем ее $PROP_DIR) лежит файл environment.type....

Вывести только те символы, которые встречаются в тексте только один раз
Из заданного текста предложения выберите и выведите на экран только те символы, которые встречаются в нем только один раз (в том порядке, в...

6
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
30.12.2018, 23:09
опиши Бин firebaseOptions, инжекти его, ..., Profit111
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
31.12.2018, 01:12
joub, вариантов много.
Можно использовать @PostConstruct, можно описать весь бин аннотацией @Bean и прописать там нужную инициализацию, можно использовать спринг бут и там вроде есть автоконфиг для этого дела.
0
9 / 9 / 6
Регистрация: 08.01.2013
Сообщений: 578
31.12.2018, 10:43  [ТС]
Спасибо.
Я уже сделал так:
XML
1
<bean id="myBean" class="ww.aaa.eeee.GcmOptionBean"/>
это в конфиге, а в конструкторе класса GcmOptionBean собственно сама инициализация.
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
31.12.2018, 19:03
joub, xml для конфигурации уже давно никто не использует.
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
31.12.2018, 19:42
KEKCoGEN, используют ( я тут недавно даже пытался на одном проекте избавиться от этих xml, через день понял, что проще оставить как есть
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
31.12.2018, 21:12
xoraxax, ну если Легаси какое то да, но начинать новый проект с xml конфигом как то странно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.12.2018, 21:12
Помогаю со студенческими работами здесь

Напечатать только те символы строки, которые встречаются в ней только один раз
Напечатать только те символы строки которые встречаются в ней только один раз.

Выбрать и напечатать только те символы, которые встречаются в нем только один раз
Разработать алгоритм:

Выбрать из текста только те символы, которые встречаются в нем только один раз
Здравствуйте, помогите пожалуйста написать программу:) Условие. Дана строка, содержащая текст на русском языке. Выбрать из него только те...

Выбрать из файла только те символы, которые встречаются в нем только один раз
дан текстовый файл, содержащий текст на русском языке. Выбрать из него только те символы, которые встречаются в нем только один раз, в том...

Выбрать из текста только те символы, которые встречаются в нем только один раз
Дан текст на русском языке. Выбрать из него только те символы, которые встречаются в нем только один раз, в том порядке, в котором они...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru