Java 将一种格式的记录映射到另一种格式的最佳方法是什么?

Java 将一种格式的记录映射到另一种格式的最佳方法是什么?,java,data-structures,mapping,Java,Data Structures,Mapping,我的记录用纯文本表示。 例如:- //Record in format A Header|meta.1|meta.2|... body|data.1|data.2|... //Now I want to convert it to record in format B Meta=[meta.1, meta.2] Content=[data.1, data.2] Summary=[{meta.1, data.1}, {meta.2, data.2}] //condition is possibl

我的记录用纯文本表示。 例如:-

//Record in format A
Header|meta.1|meta.2|...
body|data.1|data.2|...

//Now I want to convert it to record in format B
Meta=[meta.1, meta.2]
Content=[data.1, data.2]
Summary=[{meta.1, data.1}, {meta.2, data.2}]
//condition is possible
type=if meta.1==TYPE1 then T1
以上格式仅适用于一个实例。我想了解一下在不同格式之间转换记录的一般情况

我知道我可以首先以第一种格式解析记录,并将结果存储在某个地方,然后以第二种格式填充记录,所有这些都是用Java编写的

但我正在寻找一种更好的方法,它更易于维护、可扩展和健壮。是否可以在配置/模板文件中编写所有映射规则,当我使用它时,只需输入数据并获得结果。当映射更改时,我只需要修改相应的配置/模板文件


任何想法都欢迎。谢谢。

听起来像个翻译


是的,可以使用映射文件。它们具有.java/.class扩展名,规则看起来像java表达式:说真的,您可能需要进行一些编码,因为您不仅要更改单个记录的格式,还要对记录的各个部分进行分组等。我怀疑是否有一个库可以通过一组规则以高度通用的方式来完成这项工作。-如果有这样一个库,它将需要某种编程语言或更具体的DSL,那么您就不再离Java那么远了。不过,您可以尝试使用解释型JVM语言,如Scala,而不是Java。这很有趣:谢谢你的回答。