SpringMVC 自定义验证注解规则

创建验证规则

src/com/luv2code/springdemo/mvc/validation/CourseCode.java
判定规则输入字符必须以“LUV”开头

@Constraint(validatedBy = CourseCodeConstraintValidator.class)
@Target({ElementType.METHOD,ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
public @interface CourseCode {

	//define default course code
	public String value() default "LUV";
	//define default error message
	public String message() default "Must start with LUV";
	//define default groups
	public Class<?>[] groups() default {};
	//define default payloads
	public Class<? extends Payload>[] payload() default {}; 
}

/src/com/luv2code/springdemo/mvc/validation/CourseCodeConstraintValidator.java

public class CourseCodeConstraintValidator implements ConstraintValidator<CourseCode,String> {
	private String coursePrefix;
	
	public void initialize(CourseCode theCourseCode) {
		coursePrefix = theCourseCode.value();
	}
	@Override
	public boolean isValid(String theCode, ConstraintValidatorContext theConstrainValidatorContext) {

		boolean result;
		if(theCode != null)
			result = theCode.startsWith(coursePrefix);
		else
			result = true;
		return result;
	}
}
在实体类中添加验证规则

customer.java

	@CourseCode 
	private String courseCode;
	
	
	public String getCourseCode() {
		return courseCode;
	}


	public void setCourseCode(String courseCode) {
		this.courseCode = courseCode;
	}

HTML文件中添加错误信息

customer-form.jsp

 	 	 Course Code:<form:input path="courseCode"/>
 	 	<form:errors path="courseCode" cssClass="error" />

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值