Реализовать запрос с помощью интерфейса спецификации JPA - PullRequest
0 голосов
/ 23 октября 2018

У меня есть этот запрос JPA, который используется для выбора таблицы с интерфейсом спецификации.

    public List<PaymentTransactions> findAll(Specification<PaymentTransactions> spec) {
        String hql = "select e from " + PaymentTransactions.class.getName() + " e";
        TypedQuery<PaymentTransactions> query = entityManager.createQuery(hql, PaymentTransactions.class);
        List<PaymentTransactions> paymentTransactions = query.getResultList();
        return paymentTransactions;
    }

Как правильно выбирать только столбцы пессария из спецификации интерфейса, используя вышеуказанный запрос?

org.springframework.data.jpa.domain interface public interface Specification<T> extends Serializable 

1 Ответ

0 голосов
/ 23 октября 2018

Я не уверен, правильно ли я вас понял, но вы можете попробовать этот способ

1) Создать дополнительный конструктор с необходимыми аргументами

package com.foo.bar;

public class PaymentTransactions {
    // column mapping and other properties are omitted
    private String requiredProp;
    private String optionalProp;

    public PaymentTransactions() {} // default no-arg constructor

    public PaymentTransactions(String required) {
       this.requiredProp = required;
    } 
}

2) И изменить запрос HQL следующим образом

select new com.foo.bar.PaymentTransactions(e.requiredProp) from PaymentTransactions e
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...