У меня есть проект Gradle SpringBoot, использующий apache flink для обработки сигналов потока данных. Когда новый сигнал проходит через поток данных, я хотел бы запросить поиск (например, findById ()) его подробностей, используя идентификатор в таблице базы данных postgres, которая уже создана, чтобы получить дополнительную информацию о сигнале и обогатить данные. Я хотел бы избежать использования зависимостей Spring для выполнения поиска (т.е. репозитория Autowire) и хочу придерживаться реализации flink для поиска.
Где я могу указать, как добавить информацию о конфигурации подключения postgres, такую как порт, база данных, URL-адрес, имя пользователя, пароль и т. Д. c ... (для простоты можно предположить, что postgres db является локально в моей машине). Это так же просто, как добавить конфигурацию в файл application.properties? если да, то как я могу написать метод запроса для поиска записи в таблице postgres при поиске по значению не первичного ключа?
Некоторые онлайн-источники предлагают использовать этот скелетный код, но я не уверен, как / id подходит для моего варианта использования. (У меня есть модель EventEntity, которая содержит все параметры / столбцы из таблицы, которую я ищу).
like so
public class DatabaseMapper extends RichFlatMapFunction<String, EventEntity> {
// Declare DB connection & query statements
public void open(Configuration parameters) throws Exception {
//Initialize DB connection
//prepare query statements
}
@Override
public void flatMap(String value, Collector<EventEntity> out) throws Exception {
}
}