我正在寻找一个 Bean 到 Bean 映射 Java 框架,其映射规则可以在 Java 代码外部/不在 Java 代码中定义。源 Bean 和目标 Bean 有 n 个子 Bean,因此映射规则可能有点复杂(不是简单的一对一映射)。
有关该过程的一些概述: 这是简单的 ETL 过程,但具有可配置的映射逻辑。 我使用 Spring Batch 将多行记录(固定长度文件)加载到 bean 中。它只是将记录表示为 javabean,以将其用作定义的映射规则的基础。此映射的结果是另一个 javabean,其构建与源 Javabean 完全不同。在这里,我想在 this 到 java beans 之间使用通用映射框架。
Spring Batch 部分完全清晰并已实现。
当然,我可以在 java 中硬编码定义它,但出于透明原因,我必须将此映射逻辑导出到 java 代码之外。
有人知道这样的框架吗?有吗?我找到了 Dozer,但我认为我无法在其 XML 中定义一些复杂的映射规则。
最佳答案
也许吧。我会使用Java Scripting API为了这。它允许您加载脚本(JavaScript、Beanshell、Groovy 等等)并运行它们。您可以将一行输入(或整个模型)放入变量中,然后脚本可以创建新的对象结构。
关于java - 可配置(例如 XML)Java Bean 到 Bean 映射框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9717110/