JPA Subquery возвращает объект и использует его при множественном выборе запросаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 JPA Subquery возвращает объект и использует его при множественном выборе запроса

Сообщение Anonymous »

У меня есть приложение Java Spring, которое использует запрос критериев. Запрос имеет множественный выбор, и одно из значений является подзапросом, который возвращает полную сущность. Приложение работает в исходной среде, в которой мы его создали, но мы пытаемся запустить его в новой среде, обновили некоторые библиотеки и теперь не работает.
Пример случая

Код: Выделить всё

@Entity
public class User {
private Long id;
private String name;
private String lastName;
}

Код: Выделить всё

@Entity
public class Address {
private Long id;
private String foo;
private String bar;
}

Код: Выделить всё

@Getter
@AllArgsConstructor
public class DataResultQuery {
private String name;
private String lastName;
private Address firstAddress;
private Address lastAddress;
}

Код: Выделить всё

public class Example {

public DataResultQuery getData(Long id) {
var builder = entityManager.getCriteriaBuilder();
var query = builder.createQuery(DataResultQuery.class);

var user = query.from(User.class);
var address = user.join(User_.addresses);

var firstAddress = getSubquery(address);
var lastAddress = getSubquery(address);

query.multiselect(
user.get(User_.name),
user.get(User_.lastName),
firstAddress.getSelection(),
lastAddress.getSelection()
);

query.where(); //Predicates

var typedQuery = entityManager.createQuery(query);

return typedQuery.getSingleResult();
}

private Subquery getSubquery(Join

Подробнее здесь: [url]https://stackoverflow.com/questions/78790424/jpa-subquery-return-object-and-use-on-query-multiselect[/url]
Ответить

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

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

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

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

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