Nickname VO(Value Object) 생성

@Getter
@NoArgsConstructor
@Embeddable
public class Nickname {
    @Column(name="nickname", nullable = false, length = 20)
    private String value;
    
    public Nickname(String value){
        if(value==null||value.isBlank()){
            throw new IllegalArgumentException("닉네임은 필수입니다.");
        }
        
        if(value.length()>20){
            throw new IllegalArgumentException("닉네임은 20자 이하여야 합니다.");
        }
        this.value= value;
    }
}

닉네임 중복 검사는 어디서 해야 할까?