본문 바로가기
Project/소경관

[소경관] : 완료 항목 보기 리팩토링하기

by 오주현 2022. 6. 5.
반응형

체크를 마치고 완료 항목 리스트를 볼 때 모든 컬렉션 리스트가 아니라 로그인 사용자의 컬렉션 리스트만 보이도록 바꿔주었다.

 

for (String colNm : mongo.getCollectionNames()) {

        if (colNm == null) {
            colNm = new String();
        }

        // 컬렉션 명을 _ 기준으로 잘라 String 배열에 담는다.
        String res[] = colNm.split("_");

        // String 배열 중 ID값이 있는 부분과, 세션의 id값을 각 String 변수에 담는다.
        String result = res[0];
        String sessionId = userDTO.getUserId();

        // 두 String을 비교하여 같을 시 리스트에 담아준다.
        if (result.equals(sessionId)) {

            ViewCarDTO viewCarDTO = new ViewCarDTO();
            viewCarDTO.setCheckCollectionName(colNm);
            viewCarDTOList.add(viewCarDTO);
        }
    }

간단하게 split을 사용해서 이름을 나눠 그 값을 기준으로 리스트에 담도록 해주었다.

 

주석을 참고하면 된다.

 

이렇게 간단한 코드지만 오늘 하루 종일 고민했다. 컬렉션에 있는 컬럼 값을 기준으로 세션과 일치하면 해당 컬렉션을 쭉 불러오도록 하려고 했으나 조금 돌아 컬렉션 명이 저장될 때 앞 부분에 세션 ID가 들어가도록 해주었고 이름을 split을 통해 가공해서 불러오도록 해 준 것이다.

반응형

댓글