어느 정도 api를 구현했었는데,스페이스 생성 시 자동으로 생성자를 멤버로 추가하는 기능 & 사용자가 가입한 스페이스 목록 조회가 필요하다.이게 당연한 게, 스페이스 생성했을 때 그 사람이 원래는 그 스페이스에 없는 걸로 나왔는데, 이제는 생성하면 바로 그 스페이스에 들어가게 수정했고, 자신의 스페이스만 볼 수 있도록 조회 기능 수정(사용자가 로그인 시 자신의 스페이스만 볼 수 있도록 API를 수정했다) 그래서 바로 설계를 하고 api를 짰다.Controller이다. CreateSpace 부분에 @AuthenticationPrincipal UserPrincipal userPrincipal를 넣어준다.그리고 my라는 사용자가 가입한 스페이스 목록 조회를 만들었다.@RestController@Required..
분류 전체보기
Controller Facade Service 와 에러 코드 부분을 한번 보자! Controller는 api 보고 짰다.@RestController@RequestMapping("/users/friends")@RequiredArgsConstructorpublic class FriendController { private final FriendFacade friendFacade; @PostMapping("/request/{toUserId}") public Mono> sendFriendRequest( @AuthenticationPrincipal UserPrincipal userPrincipal, @PathVariable Long toUserId) { Long fromU..
자 어제는 친구 쪽 api 설계와 erd 부분했고, 저 부분을 보면서 친구 쪽 코드를 짰다.매우 머리 아팠다..엔티티는 2개를 만들어줬다.첫 번째는 친구 관계를 나타내는 엔티티 (FrendShip)두 번째는 친구 관계를 나타내기 위한 친구 요청 엔티티! (RequestFriend)@Getter@NoArgsConstructor(access = AccessLevel.PROTECTED)@Table("friendship")public class Friendship extends TimeStamp { @Id @Column("id") private Long id; @Column("user_id") private Long userId; @Column("friend_id") pri..
친구 기능 api 구현을 하려고 한다.친구 요청 보내기, 요청 수락, 거절, 요청 목록 조회, 친구 목록 조회 등 api 구현 RequestFriend , FriendShip 엔티티 활용 할 일 RequestFriend 및 Friendship 엔티티 설계 RequestFriend 및 Friendship api 설계 친구 요청 보내기 친구 요청 수락 친구 요청 거절 친구 요청 목록 조회 친구 목록 조회 친구 삭제 완료 -------------------------------------------- 이렇게 설계를 했다.erd와 api도 미리 설계를 했는데, erd 설계에서 시간을 많이 썼다.친구 요청이랑, 친구 테이블, 이거를 user에서 받아와야 하니, 머리가 엄청 아팠다...이렇게 설계를 ..
validation 적용을 하려고 한다 . @valid 적용 할 목록 이메일 필드에 이메일 형식 검증 추가비밀번호 필드에 대소문자, 숫자, 특수문자(~!@#$%^&*) 포함 최소 8자 이상 검증 추가스페이스 네임 필드에 최대 20자 미만 검증 추가is_public 필드에 Y 또는 N 값 검증 추가채널 이름 필드에 최대 50자 미만 검증 추가채널 타입 필드에 T 또는 V 값 검증 추가 /** * ChannelController는 채널 관련 API 요청을 처리 */@RestController@RequiredArgsConstructor@RequestMapping("/spaces/{spaceId}/channels")public class ChannelController { private final Chan..
저번에 username추가 하고 프로필 조회, 수정, 비밀번호 변경을 구현했다. 유저 엔티티다@NoArgsConstructor(access = AccessLevel.PROTECTED)@Getter@Table(name = "user")public class User { @Id private Long id; private String email; private String password; private String intro; private String nickname; private int status; private Long kakaoId; // 상태: 인증 전, 인증 완료, 탈퇴 public enum Status { ACTIVATE, ..