특정 데이터가 삭제되지 않았을 때는 중복을 허용하지 않고, 삭제(논리)된 경우에는 중복이 가능하게 요청을 받았다. 예를 들어 email이라는 컬럼이 위와 같이 되어야 한다고 하자.'test@test.com'이 이미 사용되고 있다. 그렇다면 더 이상 다른 사용자는 해당 이메일을 사용할 수 없다. 그러나 해당 로우가 삭제되었다면, 즉, deleted_at이 기록된 경우에는 더 이상 email은 존재하지 않는 것으로 간주되어 중복이 가능하도록 설정해야 한다. 그냥 deleted_at과 원하는 컬럼을 묶어서 UNIQUE로 지정하면 되지 않을까?-- email과 deleted_at을 묶어서 유니크로 지정ALTER TABLE usersADD CONSTRAINT UK_email_deleted_at UNIQUE(e..
@Entity 클래스 레벨에 @Entity 애너테이션을 붙이면 JPA 관리 대상 엔티티가 된다 -> 데이터베이스의 테이블이 된다는 뜻 애트리뷰트 name 엔티티 이름을 설정할 수 있음 name 애트리뷰트를 설정하지 않으면 기본값으로 클래스 이름을 엔티티 이름으로 사용한다 import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity(name = "USERS") // 엔티티명을 USERS로 설정 @Table(name = "USERS") // 테이블명을 USERS로 설정 public class Member { @Id private Long memberId; } @Table 테이블의 이름을 ..