Spring mvc之WebDataBinderFactory接口

1. 定义

用于为命名目标对象创建WebDataBinder实例的工厂。
接口定义如下:

public interface WebDataBinderFactory {

    WebDataBinder createBinder(NativeWebRequest webRequest, @Nullable Object target, String objectName)
            throws Exception;

}

1.1 createBinder方法

为给定对象创建WebDataBinder。

2. 实现类

image.png

从图中可以发现其实现类包括 DefaultDataBinderFactory、InitBinderDataBinderFactory、ServletRequestDataBinderFactory。

2.1 DefaultDataBinderFactory类

该类在Spring-web包下,创建WebRequestDataBinder实例并用WebBindingInitializer对其进行初始化。

2.2 InitBinderDataBinderFactory类

2.3 ServletRequestDataBinderFactory类

3. WebBindingInitializer接口

用于初始化WebDataBinder以在特定web请求的上下文中执行数据绑定的回调接口。
接口定义如下:

public interface WebBindingInitializer {

    void initBinder(WebDataBinder binder);

    @Deprecated
    default void initBinder(WebDataBinder binder, WebRequest request) {
        initBinder(binder);
    }

}

3.1 实现类ConfigurableWebBindingInitializer

方便的WebBindingInitializer,用于Spring应用程序上下文中的声明性配置。允许使用多个控制器/处理程序重用预配置的初始值设定项。

你可能感兴趣的:(Spring mvc之WebDataBinderFactory接口)