|
19 | 19 |
|
20 | 20 | import jakarta.persistence.EntityManager;
|
21 | 21 | import jakarta.persistence.LockModeType;
|
22 |
| -import jakarta.persistence.NoResultException; |
23 | 22 | import jakarta.persistence.Parameter;
|
24 | 23 | import jakarta.persistence.Query;
|
25 | 24 | import jakarta.persistence.TypedQuery;
|
@@ -442,12 +441,7 @@ public Page<T> findAll(Pageable pageable) {
|
442 | 441 |
|
443 | 442 | @Override
|
444 | 443 | public Optional<T> findOne(Specification<T> spec) {
|
445 |
| - |
446 |
| - try { |
447 |
| - return Optional.of(getQuery(spec, Sort.unsorted()).setMaxResults(2).getSingleResult()); |
448 |
| - } catch (NoResultException e) { |
449 |
| - return Optional.empty(); |
450 |
| - } |
| 444 | + return Optional.ofNullable(getQuery(spec, Sort.unsorted()).setMaxResults(2).getSingleResultOrNull()); |
451 | 445 | }
|
452 | 446 |
|
453 | 447 | @Override
|
@@ -564,13 +558,10 @@ private <S extends T, R> R doFindBy(Specification<T> spec, Class<T> domainClass,
|
564 | 558 | @Override
|
565 | 559 | public <S extends T> Optional<S> findOne(Example<S> example) {
|
566 | 560 |
|
567 |
| - try { |
568 |
| - return Optional |
569 |
| - .of(getQuery(new ExampleSpecification<>(example, escapeCharacter), example.getProbeType(), Sort.unsorted()) |
570 |
| - .setMaxResults(2).getSingleResult()); |
571 |
| - } catch (NoResultException e) { |
572 |
| - return Optional.empty(); |
573 |
| - } |
| 561 | + TypedQuery<S> query = getQuery(new ExampleSpecification<>(example, escapeCharacter), example.getProbeType(), |
| 562 | + Sort.unsorted()).setMaxResults(2); |
| 563 | + |
| 564 | + return Optional.ofNullable(query.getSingleResultOrNull()); |
574 | 565 | }
|
575 | 566 |
|
576 | 567 | @Override
|
|
0 commit comments