codechobostudy / movie-api

영화 예매 사이트
5 stars 7 forks source link

Member API #29

Open loustler opened 8 years ago

loustler commented 8 years ago

Member 기본 API

Reference branch :feature/member-api

loustler commented 8 years ago

PR #39 기본 Member API commit

iamkyu commented 8 years ago

PR #39 의 MemberService 클래스에 혹시 @Service 어노테이션이 빠진 것 아닌가요? 시간 되실 때 확인 부탁 드립니다 :)

loustler commented 8 years ago

@iamkyu 그렇네요 :) 브런치 정리하고 옮기면서 누락됐나보네요 ;; 수정해서 다시 PR하겠습니다

loustler commented 8 years ago

@iamkyu #41 확인부탁드려요

loustler commented 8 years ago
  1. 로그인 어떻게?
  2. 소셜 연동은 어떻게?
    • 소셜 연동하면 로그인은 accessToken과 같은 토큰을 가지고 와서 해야됨
    • 아이디를 부여해서 로그인을 하게 한다면 소셜을 통한 로그인과 일반 로그인을 같이 할 수 있게 처리해야 됨
    • 소셜에서 토큰을 이용해 API에 접근해서 고객정보에 있는 이메일을 아이디로 강제로 설정하는 건?
  3. 패스워드는 어떻게 처리할 것인지?
    • 스프링 시큐리티? 단순한 암호화(like sha256)?
  4. 이메일 인증의 유효기간은?
    • 보통 하루정도유효기간을 주는 듯
    • 그럼 이메일 인증정보를 담고 있는 테이블이 필요하지 않으려나?
    • 필요하지 않다면 어디에다 그 인증정보를 가지고 있게 해야할지?
    • 인증정보는 완전 유니크 해야되는 지? 아니면 완전 유니크하지 않더라고 고객마다 겹치지만 않으면 되는 지?
    • 인증 URL은 어떻게 할 지?

일단 생각난 것들 정리

loustler commented 8 years ago

변경해야 될 것

  1. Member Class NoArgsConstructor Access Level 조정
    • @NoArgsConstructor(access = AccessLevel.PROTECTED) 로 변경
    • JPA를 위해 필요하나 public으로 할 시 위험요소가 많음
    • [x] 반영완료
  2. Entity <-> DTO 간 컨버터 필요
    • 반복된 코드 사용되고 있음
    • 이펙티브 자바에서 봤던 builder pattern 혹은 convert methodDTO에 추가
    • 방법 미정 convert method를 사용하는 예제 찾아보기
    • [x] 반영완료
  3. null check시 == null이 아니라 Objects class에 있는 것 고려하기
    • requireNonNull
    • [x] 반영완료
  4. MemberService에서 Entity -> DTO 변환하는 로직 다른 것 고려

Adviser is @devsejong

loustler commented 8 years ago

fix

SocialService에서 create시 SQL이 정상적으로 execute 됐는데도 could not execute SQL Exception이 발생했던 이유

class Member {
...

@OneToMany(fetch = FetchType.EAGER, mappedBy = "seq")
List<Social> socials;
...
}

로 되어 있었는데

mappedByseqmember에 있는 seq가 아니라 social에 있는 seq로 되었는지 SocialPKFK가 되어버려서 INSERT가 안됨

seq가 아니라 member로 바꾸거나 비워버리면 exception 발생 안함

Advisor : @changhwa @reiphiel 👍

loustler commented 8 years ago

PR #43