Связывание QueryDSL для нескольких столбцов

Я хотел бы создать пользовательскую привязку (QuerydslBinderCustomizer), который отображается в предложение WHERE, которое фильтрует по 2 столбцам. В качестве примера /otherobject.people?type=oldman должен сопоставить что-то вроде WHERE sex=male AND age > 80, Итак, у меня есть 2 вопроса:

1) как это создать QPeople.type путь (это не столбец в Entity)?

2) как сопоставить значение с пользовательским выражением?

bindings.bind(QOtherobject.people.any()).first((QPeople path, People value) -> {
    BooleanBuilder predicate = new BooleanBuilder();
    if ("oldman".equals(value)) { // value.getType?
        return predicate.and(path.sex.eq("male"))
                        .and(path.age.gt(80));
    }
})

Проблема с вышеупомянутым состоит в том, что значение не является строкой 'oldman', а имеет тип People. В то время как значение параметра url является строкой.

0 ответов

Другие вопросы по тегам