История изменений
Исправление
Legioner,
(текущая версия)
:
У меня вот такой утилитный метод есть для этих целей:
public static <T> Optional<T> getSingleResultOpt(TypedQuery<T> query) {
List<T> list = query.getResultList();
Iterator<T> iterator = list.iterator();
if (!iterator.hasNext()) {
return Optional.empty();
}
T result = iterator.next();
if (iterator.hasNext()) {
throw new NonUniqueResultException();
}
return Optional.of(result);
}
Если жава не 8-я, можно null возвращать.
Исправление
Legioner,
:
У меня вот такой метод есть:
public static <T> Optional<T> getSingleResultOpt(TypedQuery<T> query) {
List<T> list = query.getResultList();
Iterator<T> iterator = list.iterator();
if (!iterator.hasNext()) {
return Optional.empty();
}
T result = iterator.next();
if (iterator.hasNext()) {
throw new NonUniqueResultException();
}
return Optional.of(result);
}
Если жава не 8-я, можно null возвращать.
Исходная версия
Legioner,
:
У меня вот такой метод есть:
public static <T> Optional<T> getSingleResultOpt(TypedQuery<T> query) {
List<T> list = query.getResultList();
Iterator<T> iterator = list.iterator();
if (!iterator.hasNext()) {
return Optional.empty();
}
T result = iterator.next();
if (iterator.hasNext()) {
throw new NonUniqueResultException();
}
return Optional.of(result);
}
[/java]
Если жава не 8-я, можно null возвращать.