본문 바로가기

Server Programming/Spring Boot Full-Stack Programming

[스프링 풀스택 클론 코딩 - 회원가입] (1-2) 계정 도메인

반응형

Account

//도메인 생성을 위한 어노테이션
@Entity

// id만 이용해, equals확인 -> equals 메서드 오버라이딩
@Getter @Setter @EqualsAndHashCode(of = "id")

//기본 생성자가 필요한 상태에서 @Builder사용하기 위해 
@Builder @AllArgsConstructor @NoArgsConstructor
public class Account {

	// 기본키와 생성 전략
	@Id	@GeneratedValue
	private Long id;
	
	
	//로그인 방식에서 이메일과 닉네임을 이용한 방식 지원하기 위해
	@Column(unique =true) //중복 방지
	private String email;
	@Column(unique =true)
	private String nickname;
	
	private String password;
	
	//이메일 인증 관련 참거짓판단
	private boolean emailVerified;

	//이메일 검증 토큰 값
	private String emailCheckToken;
	
	//회원가입날짜 변수
	private LocalDateTime joinedAt;
	
	private String bio;
	
	private String url;
	
	private String occpation;
	
	private String location;
	
	//이미지파일은 varchar 데이터형식보다 크기가 커서 사용하는 어노테이션
	//로딩 시간을 설정하는 어노테이션 즉시 로딩과 지연 로딩이 존재
	//즉시 로딩 EAGER, 지연 로딩 LAZY
	@Lob @Basic(fetch = FetchType.EAGER)
	private String profileImage;
	
	//생성, 가입, 갱신정보 알림 설정 -> Email, Web, 둘다
	private boolean studyCreatedByEmail;
	
	private boolean studyCreatedByWeb;
	
	private boolean studyEnrollmentResultByEmail;
	
	private boolean studyEnrollmentResultByWeb;
	
	private boolean studyUpdatedByEmail;
	
	private boolean studyUpdatedByWeb;
	
}
반응형