inflearn logo
강의

Course

Instructor

[Beginner] Let's Eat! Create Membership with Kotlin and Spring Security + JWT

2.4. Creating a BaseResponse

DTO 생성 과정에서 궁금한 점이 있어요!!

560

sayyou09181812

25 asked

0

DTO를 생성할 때 코드가 너무 많이 생성되는데 더 간편하고 쉽게 벨리데이션 처리할 수 있는 방법은 없을까요?

kotlin spring-boot jpa spring-security jwt

Answer 3

0

kimkimgod

이전에 이와 관련된 질문을 남겨주신 분이 계셔서 해당 글 읽어보시면 도움되실 것 같습니다.

감사합니다.


https://www.inflearn.com/questions/1012428/validation-%EA%B4%80%EB%A0%A8%ED%95%B4%EC%84%9C-%EC%A7%88%EB%AC%B8%EB%93%9C%EB%A6%BD%EB%8B%88%EB%8B%A4

0

sayyou09181812

답변 감사합니다!!

0

kimkimgod

안녕하세요 평생주니어님.

질문 주셔서 감사합니다.


DTO 생성할때 좀 더 간편하고 쉽게 처리하는 방법을 질문 주셨는데 data class 대신에 class를 사용하면 더 간편하게 사용할 수 있습니다.

 

<data class를 사용한 코드>

data class LoginDto(
    @field:NotBlank
    @JsonProperty("loginId")
    private val _loginId: String?,

    @field:NotBlank
    @JsonProperty("password")
    private val _password: String?,
) {
    val loginId: String
        get() = _loginId!!
    val password: String
        get() = _password!!
}

 

<class를 사용한 코드>

class LoginDto(
    loginId: String?,
    password: String?,
) {
    @field:NotBlank
    val loginId: String = loginId ?: ""

    @field:NotBlank
    val password: String = password ?: ""
}

class를 사용해서 null 허용 타입으로 일단 DTO에 데이터를 담고

중괄호 안에 프로퍼티를 두고 validation 어노테이션을 사용해서 체크를 하면서

null 불가 타입은 DTO를 사용시 null 고려없이 사용하는 방법도 있습니다.

 

감사합니다.

 

0

sayyou09181812

답변 감사합니다!!

0

communityai8509

안녕하세요 평생주니어 님, 인프런 AI 인턴이에요.
DTO를 생성하는 과정에서 벨리데이션 처리를 간편하고 쉽게 할 수 있는 방법으로는 ‘Bean Validation’을 사용하는 방법이 있습니다. ‘Bean Validation’은 자바에서 제공하는 표준화된 벨리데이션 기능으로, 애노테이션을 사용해서 벨리데이션 규칙을 정의하고 손쉽게 적용할 수 있습니다. 예를 들어, 필드에 대한 유효성 검사를 하고 싶을 때 @NotNull, @Size, @Pattern 등의 애노테이션을 사용하면 간단하게 벨리데이션 처리를 할 수 있습니다. 자세한 내용은 자바 Bean Validation 문서나 관련된 자료를 참고하시면 도움이 될 것입니다. 감사합니다!

패키지 구분에 대해 궁금한게 있습니다

0

10

1

스프링부트 서버 에러나요

0

17

1

74. 데이터 캐시 - 1 (이론) 강의 영상 누락

0

26

1

2026.04에 추가된 강의 시청 불가

0

28

1

Service Create/Update Record 운용과 Delete Record 미운용의 차이 질문

0

20

1

인가 코드 발급(프론트 vs 백)

0

28

2

validation 추가하기에 대해 질문

0

105

1

로그인 후 Token 발행 시 postman 에러메시지

0

156

1

unique 작성법

0

151

1

4.1 마지막 회원가입 실행되지만 빈화면 뜸

0

223

3

4.1강 마지막 회원가입 실행

0

154

1

2.4강에서 1:18초쯤에 <T>를하고 뭔가 추가하는 작업

0

177

2

class 와 data class

0

182

1

토큰에서 예외 발생시 처리

0

245

1

안녕하세요 선생님 rememberme 질문드립니다..!

0

245

1

Next Lv 강의에 대해서 계획중이신게 있을까요?

0

285

1

테이블 create문

0

182

1

2.5강에서 포스트맨 오류와 전에 실습한 내용에 대해 질문 드립니다

0

592

2

TokenProvider의 Key 관련하여 질문이 있습니다.

0

378

1

스프링 시큐리티 예외 RestControllerAdvice로 처리

0

443

1

1 : N 필드 `memberRole` 에 @OneToMany 옵션 cascade 미사용, 컬랙션 null 초기화 에 대한 질문입니다.

0

407

2

loginId는 왜 변경이 안될까요?

0

420

1

memberRole필드 질문이요~

0

494

1

Validation 관련해서 질문드립니다.

1

795

2