Spring Boot Validated 유효성 검증 그룹 설정
2023. 7. 4. 13:39ㆍ웹개발/Spring Boot
728x90
public class ValidationGroups {
public interface OnUpdate {}
public interface OnInsert {}
}
ValidationGroups 클래스에 해당 interface를 선언 해두고
@Data
public class BoardForm {
@NotBlank(message = "제목은 필수입니다.", groups = {ValidationGroups.OnInsert.class})
@Length(min = 5, message = "제목은 6글자 이상", groups = {ValidationGroups.OnInsert.class})
@Length(max = 15, message = "제목은 15글자 이하", groups = {ValidationGroups.OnInsert.class})
private String title;
@NotBlank(message = "내용은 필수입니다.", groups = {ValidationGroups.OnInsert.class, ValidationGroups.OnUpdate.class})
private String contents;
@NotBlank(message = "아이디가 없습니다.", groups = {ValidationGroups.OnUpdate.class})
private String id;
}
게시물에 대한 제목은 변경이 안된다는 가정하에 위의 코드와 같이 작성하고
@PostMapping("boardInsert")
public String boardInsert(@Validated(ValidationGroups.OnInsert.class) BoardForm boardForm, Errors errors, Model model) throws NoSuchAlgorithmException {
@PostMapping("boardUpdate")
public String boardUpdate(@Validated(ValidationGroups.OnUpdate.class) BoardForm boardForm, Errors errors, Model model) throws NoSuchAlgorithmException {
다음과 같이 작성하여 유효성 검증 그룹을 설정해서 사용할수 있다.
728x90
반응형
'웹개발 > Spring Boot' 카테고리의 다른 글
JAVA Enum Value로 Key 찾아오기 (0) | 2023.07.06 |
---|---|
Spring Boot Controller 에서 전체 파라메터 폼 클래스 유효성 검증 (0) | 2023.07.05 |
Spring Boot 정적 리소스 설정 (0) | 2023.07.04 |
Spring Boot Security 사용자별 동시접속자 수 제어 (0) | 2023.06.30 |
Spring Boot + Thymeleaf Tag JAVA CUSTOM UTIL 사용 (0) | 2023.06.27 |