10 sping核心技术验证(Validation) 数据绑定(Data Binding)

发布时间:2024年01月12日

Validation

Spring提供了一个Validator接口,您可以使用它来验证对象。Validator接口通过使用Errors对象来工作,以便在进行验证时,验证器可以向Errors对象报告验证失败
public class Person {

 private String name;
 private int age;

 // the usual getters and setters...
}
public class PersonValidator implements Validator {

	/**
	 * This Validator validates only Person instances
	 */
	public boolean supports(Class clazz) {
		return Person.class.equals(clazz);
	}

	public void validate(Object obj, Errors e) {
		ValidationUtils.rejectIfEmpty(e, "name", "name.empty");
		Person p = (Person) obj;
		if (p.getAge() < 0) {
			e.rejectValue("age", "negativevalue");
		} else if (p.getAge() > 110) {
			e.rejectValue("age", "too.darn.old");
		}
	}
}

Data Binding

数据绑定对于将用户输入绑定到目标对象非常有用,其中用户输入是一个映射,属性路径作为键,遵循JavaBeans约定。DataBinder是支持此功能的主要类,它提供了两种绑定用户输入的方法:

  • Constructor binding
  • Property binding with BeanWrapper
    在这里插入图片描述

Spring Type Conversion

  • Converter SPI
package org.springframework.core.convert.converter;

public interface Converter<S, T> {

	T convert(S source);
}

Spring Field Formatting

package org.springframework.format;

public interface Formatter<T> extends Printer<T>, Parser<T> {
}

在这里插入图片描述引用:https://www.cnblogs.com/daimzh/p/12854385.html

文章来源:https://blog.csdn.net/qq_36551101/article/details/135504361
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。