Spring

기준 API로 마지막 기록 가져 오기

기록만이살길 2021. 3. 21. 05:03
반응형

디비에서 API로 마지막 데이터(row) 가져 오기

1. 질문(문제점):

여러분. 내 임무는 내 데이터베이스에서 마지막으로 추가 된 레코드를 가져 오는 것입니다. 데이터베이스의 마지막 레코드에는 최대 ID가 있으므로 이와 같은 메서드를 작성했지만 항상 null을 반환합니다.
@Override
    public Address getLast() {
        CriteriaBuilder criteriaBuilder = entityManager.getCriteriaBuilder();
        CriteriaQuery<Address> criteriaQuery = criteriaBuilder.createQuery(Address.class);
        Root<Address> root = criteriaQuery.from(Address.class);
        criteriaQuery
                .select(root)
                .orderBy(criteriaBuilder.desc(root.get(Address_.id)));
        TypedQuery<Address> findAllSizes = entityManager.createQuery(criteriaQuery);
        return findAllSizes.getResultStream().findFirst().orElse(null);
    }

2. 해결방안:

모두 잘 작동합니다. 추가해야 할 것은 지정된 메서드를 호출하는 메서드에 @Transactional을 추가하는 것뿐이었습니다.
65672041
반응형