카테고리 없음

8월 28일 월요일 TIL 회고록

tft4rollz 2023. 8. 29. 02:45

오늘도 역시 조회수를 적용하기 위해 이 블로그를 참고하며 만들고있다. 

만들면서 익셉션이 출력되었다.

"java.lang.NumberFormatException: Cannot parse null string "

null 문자를 구문분석 할 수 없다는 익셉션이다.

 

내가 해결하려고 시도했던 방법은 먼저 조회수를 가져오기 위해  Repository에 findByViews 메서드를 만들었다.

Optional<BasicBoard> findByViews(Long boardId);
      valueOperations.set(
          key,
          String.valueOf(boardRepository.findByViews(basicBoardId)),
          Duration.ofMinutes(3)
      );

그 후 조회수를 저장하는 메소드에서 Value 값을 String.valueOf(boardRepository.findByViews(basicBoardId) 로 만들었는데,

만들고 난 후 Value 값을 조회를 해보면 조회수가 들어가지 않고 Optional.empty 가 레디스에 저장된 것을 볼 수 있다.

이래서 위에 ~~ null String 익셉션이 출력된 것 같다.

일단 임시방편으로 저번에 만들어둔 countByViews 를 사용해 조회수를 저장했다.

  int countByViews(Long boardId);
  
    valueOperations.set(
      key,
      String.valueOf(boardRepository.countByViews(basicBoardId)),
      Duration.ofMinutes(3)
    );

지금 고치고 있는 익셉션이 있다.

java.lang.NumberFormatException: For input string: " 1"

이 익셉션인데..아마 이 부분때문에 오류가 나는 것 같다.

long boardId = Long.parseLong(data.split("::")[1]);

이것도 내일(오늘?) 고쳐봐야겠다. 오류들을 고치고 블로그를 참고하며 코드를 작성했더니 벌써 이시간이다.. 얼른 자야겠다..