Validation
μ£Όλ‘ μ¬μ©μ λλ μλ²μ μμ² (http request) λ΄μ©μ νμΈνλ λ¨κ³
Validationμ μ’
λ₯
λ°μ΄ν° κ²μ¦
νμ λ°μ΄ν°μ μ‘΄μ¬ μ 무
λ¬Έμμ΄μ κΈΈμ΄λ λ°μ΄ν° κ°μ λ²μ
email, μ μ©μΉ΄λ λ²νΈ λ± νΉμ νμμ λ§μΆ λ°μ΄ν°
λΉμ¦λμ€ κ²μ¦
μλΉμ€ μ μ± μ λ°λΌ λ°μ΄ν°λ₯Ό κ²μ¦
μ) λ°°λ¬μ±μΈ κ²½μ° λ°°λ¬ μμ²μ ν λ ν΄λΉ μ£Όλ¬Έ κ±΄μ΄ κ²°μ μλ£ μνμΈμ§ νμΈ
κ²½μ°μ λ°λΌ μΈλΆ API λ₯Ό νΈμΆνκ±°λ DB λ₯Ό μ‘°ννμ¬ κ²μ¦νλ κ²½μ°λ μ‘΄μ¬
Spring Validation
Java Bean Validation
public class MemberCreationRequest {
@NotBlank(message="μ΄λ¦μ μ
λ ₯ν΄μ£ΌμΈμ.")
@Size(max=64, message="μ΄λ¦μ μ΅λ κΈΈμ΄λ 64μ μ
λλ€.")
private String name;
@Min(0, "λμ΄λ 0λ³΄λ€ μ»€μΌ ν©λλ€.")
private int age;
@Email("μ΄λ©μΌ νμμ΄ μλͺ»λμμ΅λλ€.")
private int email;
// the usual getters and setters...
}μμ² dto μ μ΄λ Έν μ΄μ μΌλ‘ λͺ μ ν @RequestBody μ @Valid μ΄λ Έν μ΄μ μ λ¬κ² λλ©΄, Java Bean Validation μ΄ μνλκ³ λ¬Έμ κ° μμ λλ§ λ©μλ λ΄λΆλ‘ μ§μ λλ€.
κ²μ¦ μ€ μ€ν¨κ° λ°μνλ©΄ MethodArgumentNotValidException λ°μ
Spring Validator Interface
Personμ΄λΌλ javaBean κ°μ²΄κ° μμ λ, Validator λ₯Ό ꡬνν PersonValidator λ₯Ό ν΅ν΄ κ²μ¦νλ€.
supportsvalidator κ° λμν 쑰건μ μ μ. μ£Όλ‘ classμ νμ μ λΉκ΅validateκ²μ¦μ μ§ν
μ€λ¬΄ νμ©
μμ² dto μμ Java Bean Validation μΌλ‘ 1μ°¨ κ²μ¦
λ‘μ§ μ΄κΈ°μ λΉμ¦λμ€ κ²μ¦ ν Custom Exception μ²λ¦¬(ErrorCode, ErrorMessage)
Spring validator μ₯λ¨μ
μ₯μ : Java Bean Validation μ λΉν΄ μ‘°κΈ λ 볡μ‘ν κ²μ¦μ΄ κ°λ₯
λ¨μ
Validation μ μννλ μ½λλ₯Ό μ°ΎκΈ°κ° μ΄λ ΅λ€. (μλμ μΌλ‘)
λΉμ¦λμ€ κ²μ¦ λ‘μ§μ ννΈν μν.
Last updated
Was this helpful?