JAVA

[JAVA] 결과조회(fetch)

응디 2022. 3. 14. 17:51

fetch() : 리스트 조회, 데이터 없으면 빈 리스트 반환

fetchOne() : 단 건 조회

  • 결과가 없으면 : null
  • 결과가 둘 이상이면 : com.querydsl.core.NonUniqueResultException

fetchFirst() : limit(1).fetchOne()

fetchResults() : 페이징 정보 포함, total count 쿼리 추가 실행

fetchCount() : count 쿼리로 변경해서 count 수 조회

@Test
public void resultFetch() throws Exception{
        //given
        List<Member> fetch = jpaQueryFactory
                .selectFrom(member)
                .fetch();

        Member fetchOne = jpaQueryFactory
                .selectFrom(member)
                .where(member.username.eq( "member1"))
                .fetchOne();

        Member fetchFirst = jpaQueryFactory
                .selectFrom(member)
                .fetchFirst();

        QueryResults<Member> results = jpaQueryFactory
                .selectFrom(member)
                .fetchResults();
        
        results.getTotal();

        List<Member> content = results.getResults();

        // total count 가져옴
        long total = jpaQueryFactory
                .selectFrom(member)
                .fetchCount();

    }

'JAVA' 카테고리의 다른 글

[JAVA] boolean @Getter  (0) 2022.03.24
[TEST] Memory DB 사용  (0) 2022.03.16
[TEST] 예외 발생 테스트  (0) 2022.03.08
[JAVA] Q-Type  (0) 2022.03.07
[TEST] 날짜 자동 생성 테스트  (0) 2022.03.03