我需要你的帮助和技巧来用推土机映射数据。
存在以下情况:
- 从服务层获取 String [ ] [ ]。
- 第一个 [ ] 代表行
- 第二个[]代表列
仅供参考:此数据取决于请求参数“表”。
// exemplary service call
String[] [] result = service.getData (String table);
String[] [] result = service.getData (Enum table);
根据参数表,必须使用另一个目标实体。
例子 :
- 参数“table_a”的字符串[][] 应使用目标对象“com.foo.TableA”
- 参数“table_b”的字符串[][] 应使用目标对象“com.bar.TableB”
服务层无法更改。该层始终返回此数据结构作为结果。
我的问题是我对这种情况没有好的起点。
我必须遍历第一个 [] 然后依赖于参数表,必须进行映射。
// useful way?
List<com.foo.TableA> mappedResult = new ArrayList<com.foo.TableA>();
for (int i = 0; i < result.size ; i++) {
String[] rowData = result[i];
mappedResult.add(mapper.map(rowData; com.foo.TableA.class));
}
// mapping.xml
<mappings>
<mapping>
<class-a>how to configure String[] ? </class-a>
<class-b> com.foo.TableA </class-b>
<field>
<a>src[0] </a> // 1st column
<b>column_id</b>
</field>
<mapping>
</mappings>
欢迎任何提示!
先感谢您