Я должен реализовать пользовательский класс репозитория, аннотированный @Repository
, который должен наследовать другой класс, также аннотированный @Repository
.
Какова правильная реализация этого варианта использования?Можно напрямую унаследовать этот класс и добавить @Repository
к основному, или есть другая лучшая практика?На самом деле у меня проблема, когда я определил
@EnableJpaRepositories(basePackages = { "com.example.foo.repositories", "com.example.bar.repositories" }
в классе @Configuration
в корневом каталоге, он не сканирует мои репозитории и не может выполнить автоматическое подключение.
вот пример моего класса репозитория:
родительский репозиторий (сторонний класс):
@Repository
public abstract class ParentRepository {
// ...
}
интерфейс и класс impl, которые находятся в пакете com.example.foo.repositories
:
public interface IFooRepository {
Foo getFoo();
}
@Repository
public class FooRepository extends ParentRepository implements IFooRepository {
Foo getFoo() {
// ...
}
}
У вас есть идеи, как это исправить и сделать возможным автоматическое подключение IFooRepository?Спасибо за совет.
РЕДАКТИРОВАТЬ:
Я нахожу зеленый боб рядом с @EnableJpaRepositories, и когда я нажимаю на бин, он перенаправляет меня на бар репозитория и не показывает бин FooRepository.Я не понимаю, потому что оба репозитория одинаково реализованы.