代码之家  ›  专栏  ›  技术社区  ›  amseager

当需要将多个类型作为源[关闭]传递时,实现Spring的转换器接口的最佳方法

  •  0
  • amseager  · 技术社区  · 6 年前

    通常需要从一堆源对象中创建一个目标对象。

    我知道唯一的一个选择——创建一个包含所需类型作为字段的高级合成类,并将其作为源代码传递给Spring转换器。但也许可以做得更容易些?

    事先谢谢。

    1 回复  |  直到 6 年前
        1
  •  1
  •   akourt    6 年前

    Converter S T U



    • Pair 对象(假设使用弹簧
      数据)。与…有关的文件 一对 可以找到 here .

    上述两种方法都可以很好地工作,假设您确实需要使用特定于弹簧的转换器(如果您将它们全局注册到 FormatterRegistry .

    现在,假设上面的情况并非如此,没有什么可以阻止您使用本机JDK和 BiFunction . 事实上,你可以走得更远,让那个班成为A班。 Component 这意味着你可以随时注射。这样做的代价是什么?您将失去注册全局转换器的能力,但是,如果您的项目没有使用它们,那么权衡是最小的(注意这里 转换器 实现是线程安全的)。

    最后,没有什么能阻止你创造自己的 @FunctionalInterface