JSR303 매개변수 체크섬 사용 단계(validation)

1469 단어
일반적으로Javaweb 프로젝트에서 대외적인 인터페이스만 있으면 전송된 매개 변수에 대해 검사를 하고 비어 있는지, 규정된 형식에 부합되는지 등 일부 요구에 부합되는지 판단한다. 일반적으로 우리는 아래의 코드로 검사를 한다.
if (StringUtils.isEmpty(password)){
    return Result.fail(Codemesg.PASSWORD_EMPTY);//        
}
if (StringUtils.isEmpty(mobile)){
    return Result.fail(Codemesg.MOBILE_EMPTY);//          
}

if (!ValidatorUtil.isMobile(mobile)){
    return Result.fail(Codemesg.MOBILE_TYPE_ERROR);//            ,    11 
}

위와 같이 매번 이렇게 많은 코드를 써서 판단해야 하고 다른 곳에서도 중복된 코드가 있다.무슨 좋은 방법으로 해결할 수 있습니까?당연히 있다
오늘은 주로 JSR303 매개 변수 검사에서validation을 사용하여 매개 변수 검사를 하는 방법을 소개합니다.
오늘 시범은 스프링boot 프로젝트를 사용했습니다.
1. 스프링-boot-starter-validation 의존 도입

    org.springframework.boot
    spring-boot-starter-validation

2. 검증이 필요한 포조 대상의 속성 위에 해당하는 검사 주석을 추가
public class User {
    @NotNull
    private String id;
    @NotNull
    @Length(min = 3)
    private String name;
}
@NotNull        
@Length(min = 3)             3

3. 이 대상을 인용하는 곳에 @Valid라는 주석을 추가합니다
@Controller
public class UserController {

    @RequestMapping("/validation")
    @ResponseBody
    public String testValidation(@Valid User user){
        return user.toString();
    }
}

이validation은 사용이 끝났습니다. 실행 중 인자가 비어 있으면 자동으로 오류가 발생하여 들어오지 않습니다
GitHub 주소

좋은 웹페이지 즐겨찾기