Присоединяйтесь и где предложение с использованием критерия в Spring загрузки
Я пытаюсь достичь чего-то, что легко сделать с помощью именованного запроса, но я хочу сделать это с помощью критериев. Ниже приведены мои две таблицы.
Notification:
id
userId (foreign key to user)
Notification
Visible
User:
userId,
name,
address
Нет Я хочу получить уведомления, соответствующие пользователю (указан идентификатор пользователя), которые являются видимыми (значение установлено в 1)
Один из способов сделать это - извлекать уведомления от Пользователя и повторять их, чтобы увидеть, какое уведомление является видимым, но я не хочу этого делать, так как это излишне вытянет много данных из БД.
Какой должен быть лучший способ сделать это?
1 ответ
Вы можете использовать Spring data jpa, чтобы достичь этого с легкостью
создать интерфейс, расширяющий хранилище JPA как
@Repository
@RepositoryRestResource
public interface NotificationRepository extends JpaRepository<Notification,Long (datatype for primary key)> {
List<Notification> findByUseridAndVisible(Long userid,int visible);
}
Теперь вы можете создать класс обслуживания и напрямую использовать этот метод как
class service(){
@Autowired
NotificationRepository notificationrepository;
public void method(){
Long userid=85;
int visible=1;
List<Notification> getnotificationlist= notificationrepository.findByUseridAndVisible(userid,visible);
}
}
Надеюсь, что это поможет вам.