Pull to refresh

Comments 8

годная статья, было очень интересно прочитать.
UFO just landed and posted this here
В сервисном слое содержится бизнес-логика, которая, в данном случае, заключается в том, чтобы обратиться в репозиторий и взять оттуда что-то. Репозиторий, в нашем случае, уже реализует все методы Spring Data JPA + QueryDSL, так что, нам даже не нужно делать его реализацию.
QueryDsl в spring-data-jpa имеет статус deprecated.
Репа для интеграции со spring не обновлялась уже полтора года.
Выходит, что использовать можно только на свой страх и риск, и вероятно через костыли.

API у него неплох, но и со спецификациями жить тоже можно, хотя бы поддержка есть.
Ну не знаю, у меня на Spring 5 отлично работает и без костылей.

Не подскажете в чем причина такой ошибки:
Caused by: java.lang.IllegalArgumentException: Failed to create query method public abstract java.lang.Iterable org.springframework.data.querydsl.QueryDslPredicateExecutor.findAll(com.querydsl.core.types.OrderSpecifier[])! No property findAll found for type MyClassName!

Скиньте весь стектрейс. А вообще, не находит метод findAll(), что очень странно. Скиньте ещё класс репозитория и кастом репозиторий.
public interface ObjectStructureRepositoryAdd
    extends ExObjectStructureRepository<ObjectStructure, QObjectStructure, String> {

}

@NoRepositoryBean
public interface ExObjectStructureRepository<T, P extends EntityPathBase<T>, ID extends Serializable>
    extends JpaRepository<ObjectStructure, String>, QueryDslPredicateExecutor<T>, QuerydslBinderCustomizer<P> {
  @Override
  default void customize(QuerydslBindings bindings, P root) {
  }
}

Еще используется spring-data envers и в конфигурации прописано:



@EnableJpaRepositories(repositoryFactoryBeanClass = EnversRevisionRepositoryFactoryBean.class)
Sign up to leave a comment.

Articles