본문 바로가기

스파르타코딩클럽(내일배움캠프)

스파르타코딩클럽 내일배움캠프 13주차 3일

728x90

설날 끝나고 첫 TIL이라 3일차부터 시작했다.

 

boardresponseDto에서 matchboard를 바로 참조했기때문에 board랑 matchboard간 순환참조가 일어났던것 같다.

 

private List<MatchBoard> matchBoards = new ArrayList<>();

변경

private List<MatchBoardResponseDto> matchBoards = new ArrayList<>();

page에 있는 여러가지 정보들을 안나오게 하기 위해 pageable 형 boardListdto를 List형태로 바꿔서 재정의하였다.

Sort sort = Sort.by(Sort.Direction.DESC, "id");
Pageable pageable = PageRequest.of(page, size, sort);

Page<Board> boards = boardRepository.findAll(pageable);
List<BoardResponseDto> boardListDto = boards.getContent()
        .stream()
        .map(BoardResponseDto::new)
        .collect(Collectors.toList());

 

 

빌더패턴

@Builder

+생성자

public static MatchBoardResponseDto toMatchBoardResponseDto(final MatchBoard matchBoard) {
    return MatchBoardResponseDto.builder()
            .id(matchBoard.getId())
            .username(matchBoard.getUsername())
            .content(matchBoard.getContent())
            .createdAt(matchBoard.getCreatedAt())
            .modifiedAt(matchBoard.getModifiedAt())
            .status(matchBoard.getStatus())
            .boardId(matchBoard.getId())
            .helpCnt(matchBoard.getHelpCnt())
            .userImg(matchBoard.getUserImg())
            .build();
}

 

오늘 발표가 끝났다.

우리조가 부족한 부분을 다른조의 발표에 의해 얻을 수 있었습니다.

대용량 트래픽을 대비해서 delete는 벌크딜리트를 사용했고, 검색은 query DSL로 검색을 하였다. 이부분을 다음 프로젝트때는 적용 시켜 보고 싶고, 쓰레드 채팅을 추가적으로 구현해보고 싶다는 생각이 들었습니다.

728x90