FollowController
클래스@RestController
로 지정되어 있으며, @RequestMapping("/api/v1/follows")
경로로 들어오는 요청을 처리합니다.createFollow
, getFollowingList
, getFollowerList
, deleteFollow
, deleteFollower
, getFriendCalendars
, getFriendCalendarForDate
등입니다.createFollow
:
@PathVariable
어노테이션을 사용하여 URL 경로에서 memberId
와 targetMemberId
값을 추출합니다.memberId
가 targetMemberId
를 팔로우하게 합니다.FollowForm
객체를 생성하면서 memberId
와 targetMemberId
를 전달합니다.FollowForm
은 두 사용자의 ID를 포함하는 폼 객체로, 팔로우 요청 정보를 캡슐화하여 followService
로 전달합니다.getFollowingList
: memberId
가 팔로잉 중인 사용자의 목록을 반환합니다.getFollowerList
: memberId
를 팔로우하는 사용자의 목록을 반환합니다.deleteFollow
: 특정 사용자를 언팔로우합니다.deleteFollwer
: 사용자가 자신의 팔로워를 삭제합니다.getFriendCalendars
: 특정 친구의 전체 캘린더를 조회합니다.getFriendCalendarForDate
: 친구의 특정 날짜에 대한 캘린더를 조회합니다.@PathVariable
어노테이션을 사용하여 URL 경로에서 memberId
와 targetMemberId
값을 추출합니다.
FollowService
클래스@Service
클래스입니다.MemberRepository
, FollowRepository
, ScheduleRepository
등을 통해 데이터베이스와 상호작용합니다.createFollow
:
equals
메서드는 객체의 동등성(Equality)을 확인하는 데 사용getFollowingList
: 사용자가 팔로잉하는 사용자 목록을 FollowingResponse
DTO로 변환하여 반환합니다.getFollowerList
: 사용자를 팔로우하는 사용자 목록을 FollowerResponse
DTO로 변환하여 반환합니다.