Типовой пример реализации репозитория данных Spring JPA - PullRequest
0 голосов
/ 18 сентября 2018

Можно ли создать общий интерфейс репозитория для сохранения POJO в моем проекте данных Spring?

У меня есть около 50 различных объектов, и я не хочу создавать 50 соответствующих интерфейсов репозитория по одному для каждого pojo?

Например,

public interface FooRepository extends JpaRepository<Foo, Integer> { }

public interface BarRepository extends JpaRepository<Bar, Integer> { }

и так далее ...

Я вижу похожие вопросы на этом сайте, но у меня нет действительно хорошего примера.

Заранее спасибо за любую помощь.

1 Ответ

0 голосов
/ 18 сентября 2018

Я думаю, что единственный способ - создать @NoBeanRepository, потому что главная цель репозитория Spring - предоставить удобный интерфейс для управления объектами.Но в этом случае ваши сущности должны иметь одинаковые свойства.

@NoRepositoryBean
public interface SortOrderRelatedEntityRepository<T, ID extends Serializable>
    extends SortOrderRelatedEntityRepository<T, ID> {

  T findOneById(Long id);   

  List<T> findByParentIdIsNullAndSortOrderLessThanEqual(Integer sortOrder);

  /** and so on*//
}

public interface StructureRepository
    extends SortOrderRelatedEntityRepository<Structure, Long> {

  Structure findOneById(Long id);

  List<Structure> findByParentIdIsNullAndSortOrderLessThanEqual(Integer sortOrder);

  /** and so on*//  
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...