Есть ли способ с JPA CriteriaBuilder для выборки объекта не-сущности? - PullRequest
0 голосов
/ 03 марта 2012

Скажите, что я хочу сделать выбор из 2 баз данных. База данных1 имеет поля A, B и C. База данных2 имеет поля D, E и F. У меня есть POJO, который состоит из полей X, Y и Z. Я хочу написать запрос CriteriaBuilder, чтобы выбрать все поля B, D и F в результирующем наборе и сопоставьте их с полями X, Y и Z в моем POJO, возвращая список моих объектов POJO. Это возможно? Я могу сделать это с помощью собственного запроса, но я не хочу использовать собственные запросы.

1 Ответ

2 голосов
/ 04 марта 2012

Вы можете попробовать использовать приведенный ниже запрос, чтобы вернуть объект, инициализированный другими объектами:

SELECT NEW com.package.Entity3(e1.b, e2.d, e2.f) FROM Entity e1, Entity e2;

Затем вам нужно предоставить конструктор с такой же сигнатурой, как в запросе, где вы можете установить значения полей кактребуется.

public Entity3(int b, int d, int f){
   x = b;
   y = d;
   z = f;
}
...