Interface ValueProvider<T>

Type Parameters:
T - KEY类型,一般情况下为 String
All Known Implementing Classes:
BeanValueProvider, DynaBeanValueProvider, MapValueProvider

public interface ValueProvider<T>
值提供者,用于提供Bean注入时参数对应值得抽象接口 继承或匿名实例化此接口 在Bean注入过程中,Bean获得字段名,通过外部方式根据这个字段名查找相应的字段值,然后注入Bean
Since:
Java 17+
Author:
Kimi Liu
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    是否包含指定KEY,如果不包含则忽略注入 此接口方法单独需要实现的意义在于:有些值提供者(比如Map)key是存在的,但是value为null,此时如果需要注入这个null,需要根据此方法判断
    value(T key, Type valueType)
    获取值 返回值一般需要匹配被注入类型,如果不匹配会调用默认转换 Convert#convert(Type, Object)实现转换
  • Method Details

    • value

      Object value(T key, Type valueType)
      获取值 返回值一般需要匹配被注入类型,如果不匹配会调用默认转换 Convert#convert(Type, Object)实现转换
      Parameters:
      key - Bean对象中参数名
      valueType - 被注入的值的类型
      Returns:
      对应参数名的值
    • containsKey

      boolean containsKey(T key)
      是否包含指定KEY,如果不包含则忽略注入 此接口方法单独需要实现的意义在于:有些值提供者(比如Map)key是存在的,但是value为null,此时如果需要注入这个null,需要根据此方法判断
      Parameters:
      key - Bean对象中参数名
      Returns:
      是否包含指定KEY