You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
회원가입, 로그인 일체(회원가입, 로그인, 중복아이디, 중복 닉네임, 스프링 시큐리티를 활용한 인증 구현)
최신순, 인기순 정렬
댓글, 포스트 수정삭제
마이페이지, 댓글 리스트 분리
폼데이터 형식으로 S3서버에 이미지 업로드 기능 구현
페이징 처리에서 페이지 객체를 그대로 반환하지 않고 List형 Dto에 담아서 반환하도록 처리. (일반적 Dto 사용 취지와 동일)
리프레시 토큰을 활용한 엑세스 토큰 보안성 강화
트러블 슈팅
S3 이미지 업로드시 폼데이터 한글 인코딩 이슈
String origName = new String(filePath.getBytes(StandardCharsets.ISO_8859_1), StandardCharsets.UTF_8);
'좋아요 버튼'선택여부 true, false변환시 put과 delete대상 불일치
테이블에서 탐색 대상을 UserId 에 추가로 PostId를 사용해 대상 명확히 설정
클라이언트 단에서 불필요한 리렌더링 현상 발생
데이터 갱신시 변경된 부분만 적용할 수 있도록 GetMapping 대상을 분리(Post와 Comment)
'좋아요 개수'변경에 따른 Post 테이블 내부 필드값 변경에 따라 Post의 최종 수정일자가 함께 변경되는 현상
쿼리문을 따로 보내서 포스트 조회 메소드에서 발생하는 ModifiedAt 일자 변경을 방지
(다른 대안 : '좋아요'자체를 따로 관리하는 테이블 생성해서 ModifiedAt의 영향과 분리)