Я использую JDBI в тандеме с Spring Boot. Я следовал этому руководству, в результате чего мне пришлось создать класс: JdbiConfig
в котором , для каждого дао, необходимого в контексте приложения, вы должны добавить:
@Bean
public SomeDao someDao(Jdbi jdbi) {
return jdbi.onDemand(SomeDao.class);
}
Мне было интересно, есть ли способ в Spring Boot создать собственный процессор для создания bean-компонентов и поместить их в контекст приложения. У меня есть две идеи о том, как это может работать:
- Аннотируйте DAO пользовательской аннотацией
@JdbiDao
и напишите что-нибудь, чтобы подобрать их. Я попытался просто вручную внедрить их в запуск приложения, но проблема в том, что они могут не загрузиться вовремя для внедрения, поскольку они не распознаются во время сканирования класса. - Создайте класс
JdbiDao
, который мог бы расширять любой интерфейс репозитория. Затем аннотируйте интерфейсы стандартными@Repository
и создайте пользовательский процессор для их загрузки посредствомJdbi#onDemand
.
Это две мои идеи, но я не знаю, как это сделать. Я застрял в ручном создании bean-компонента? Это было решено раньше?