BoardRepositoryTest > SPRING_DATA_JPA

본문 바로가기
사이트 내 전체검색

SPRING_DATA_JPA

BoardRepositoryTest

페이지 정보

profile_image
작성자 관리자
댓글 0건 조회 133회 작성일 24-06-17 11:17

본문

package web.repository;


import java.util.Optional;

import java.util.stream.IntStream;


import org.junit.jupiter.api.Test;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.boot.test.context.SpringBootTest;

import org.springframework.data.domain.Page;

import org.springframework.data.domain.PageRequest;

import org.springframework.data.domain.Pageable;

import org.springframework.data.domain.Sort;


import jakarta.transaction.Transactional;

import lombok.extern.log4j.Log4j2;

import web.domain.Board;


@SpringBootTest

@Log4j2

public class BoardRepositoryTest {


@Autowired

private BoardRepository boardRepository;


@Test

public void testSearchAll2() {

String[] types = {"t","c","w"};


String keyword = "1";


// 1 page order by bno desc

Pageable pageable = PageRequest.of(0, 10, Sort.by("bno").descending());


Page<Board> result = boardRepository.searchAll(types, keyword, pageable);


System.out.println("========== List Start ==========");

System.out.println("결과:"+result);

System.out.println("총 게시물 수:"+result.getTotalElements()); 

System.out.println("총 페이지 수:"+result.getTotalPages());

System.out.println("현재 페이지 넘버:"+result.getNumber()); //0

System.out.println("출력 게시물 수:"+result.getSize()); //10

System.out.println("시작이 0인지 여부:"+result.isFirst());

System.out.println("이전 페이지 존재 여부:"+result.hasPrevious());

System.out.println("다음 페이지 존재 여부:"+result.hasNext());


for(Board b : result.getContent()) {

//실제 페이지의 데이터를 처리하는 것은 getContent()를 이용해서 List<엔티티 타입>으로 처리 또는

//Stream<엔티티 타입>을 반환하는 get()을 이용할 수 있다.

System.out.println(b);

}

System.out.println("========== List End ==========");

}


//@Test

public void testSearchAll() {

String[] types = {"t","c","w"};


String keyword = "1";


// 1 page order by bno desc

Pageable pageable = PageRequest.of(0, 10, Sort.by("bno").descending());


Page<Board> result = boardRepository.searchAll(types, keyword, pageable);

}


//@Test

public void testSearch1() {

// 2 page order by bno desc

Pageable pageable = PageRequest.of(1, 10, Sort.by("bno").descending());


boardRepository.search1(pageable);

}


}




[콘솔 내용]

Hibernate: 

    select

        b1_0.bno,

        b1_0.content,

        b1_0.moddate,

        b1_0.regdate,

        b1_0.title,

        b1_0.writer 

    from

        board b1_0 

    where

        (

            b1_0.title like ? escape '!' 

            or b1_0.content like ? escape '!' 

            or b1_0.writer like ? escape '!'

        ) 

        and b1_0.bno>? 

    order by

        b1_0.bno desc 

    limit

        ?, ?

Hibernate: 

    select

        count(b1_0.bno) 

    from

        board b1_0 

    where

        (

            b1_0.title like ? escape '!' 

            or b1_0.content like ? escape '!' 

            or b1_0.writer like ? escape '!'

        ) 

        and b1_0.bno>?

========== List Start ==========

결과:Page 1 of 2 containing web.domain.Board instances

총 게시물 수:19

총 페이지 수:2

현재 페이지 넘버:0

출력 게시물 수:10

시작이 0인지 여부:true

이전 페이지 존재 여부:false

다음 페이지 존재 여부:true

Board(bno=100, title=객체 수정, content=내용...100, writer=작성자0)

Board(bno=91, title=제목...91, content=내용...91, writer=작성자1)

Board(bno=81, title=제목...81, content=내용...81, writer=작성자1)

Board(bno=71, title=제목...71, content=내용...71, writer=작성자1)

Board(bno=61, title=제목...61, content=내용...61, writer=작성자1)

Board(bno=51, title=제목...51, content=내용...51, writer=작성자1)

Board(bno=41, title=제목...41, content=내용...41, writer=작성자1)

Board(bno=31, title=제목...31, content=내용...31, writer=작성자1)

Board(bno=21, title=제목...21, content=내용...21, writer=작성자1)

Board(bno=19, title=제목...19, content=내용...19, writer=작성자9)

========== List End ==========


댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

공지사항
자유게시판
질문답변
1:1문의

 

별명 : 터푸가위
주소 : 부산시 동래구 명장로20번길 90
대표 : 박규태
메일 : dancepkt@******.com

접속자집계

오늘
108
어제
132
최대
10,760
전체
274,938
Copyright © dancePKT . All rights reserved.