[TIL] 12.21@Valid, username과 password에 정규식 다는 법

hyewon jeong·2022년 12월 21일
0

TIL

목록 보기
6/138

Claims ?

Payload 부분에는 토큰에 담을 정보가 들어있습니다.
여기에 담는 정보의 한 ‘조각’ 을 클레임(claim) 이라고 부르고, 이는 name / value 의 한 쌍으로 이뤄져있습니다. 토큰에는 여러개의 클레임 들을 넣을 수 있습니다.

클레임 의 종류는 다음과 같이 크게 세 분류로 나뉘어져있습니다:

등록된 (registered) 클레임,
공개 (public) 클레임,
비공개 (private) 클레임

연관관계 맺기

@OneToMany(fetch = FetchType.LAZY, mappedBy = "user")//지연로딩
List<Posts> postsList = new ArrayList<>();  //포스트와 일대다 관계


@ManyToOne
@JoinColumn(name= "USER_ID",nullable = false)
private User user;

mappedBy = "user" 는 이 연관관계의 기준 또는 주인이라는 것을 표현함

username과 password에 정규식 다는 법

  1. signupRequsetDto, loginRequestDto 에서 해당 멤버 변수에 @Valid 유효성 검사를 사용 하여 정규식 표현을 만들어줌
@Getter
@NoArgsConstructor //세터 대신 DTO 생성자를 생성 하는 방법
public class LoginRequest {

    @NotBlank
    @Size(min=4,max=10)
    @Pattern(regexp = "^[a-z0-9]*$", message =" a-z , 0-9 만 입력하세요.")
    private String username;

    @NotBlank
    @Size(min=8,max=15)
    @Pattern(regexp = "^[A-Za-z0-9]*$", message =" A-Z,a-z , 0-9 만 입력하세요.")
    private String password;
 }

@Valid를 이용한 검증 예시

  1. 의존성 추가 해야한다.
    implementation 'org.springframework.boot:spring-boot-starter-validation'
profile
개발자꿈나무

0개의 댓글