Спецификация Spring Data JPA для отношений OneToManyJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Спецификация Spring Data JPA для отношений OneToMany

Сообщение Anonymous »


У меня возникла проблема с получением категорий объектов списка с использованием спецификаций JPA данных Spring. Мне нужно получить все категории с их рецептами, где Recipe.dateModified больше некоторой даты. Я не знаю, как создать свой Predicate, который бы заполнял Collection в каждой категории только теми рецептами, которые старше этой даты.

@Entity общественный класс Категория { частный внутренний идентификатор; частное имя строки; @OneToMany(mappedBy = "категории") рецепты частной коллекции; } @Сущность рецепт публичного класса { частный внутренний идентификатор; частное имя строки; частная отметка времени dateModified; } В CategoryService я получаю List, используя спецификацию:

@Service общественный класс CategoryService { @Autowired частная категорияRepository CategoryRepository; общедоступный список findAll (Дата дата) { вернуть категориюRepository.findAll(where(byDateModified(date))); } } Я бы написал такую ​​спецификацию, но это не работает.
публичный класс RecipeSpec { общедоступная статическая спецификация byDateModified (Дата дата) { возврат (корень, запрос, построитель) -> { окончательный рецепт Join = root.join(Category_.recipes, JoinType.LEFT); return builder.greaterThan(recipe.get(Recipe_.dateModified), date); }; } }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»