0
我正在构建一个数据驱动的测试系统。我之前用XML做过,但json给了我一些有趣的问题。基于属性文件设置实例化泛型
对于每个请求和响应类型json,我在我的脚本中指定pojo类型的设置。这个类型被实例化为一个传递给jackson的类对象,以将json编组为一个可用的pojo。所以它是这样的:
"responseType": "java.util.List",
最终被抽到
Class<?> reponseType = null;
try {
if (d.shouldPass) {
reponseType = Class.forName(d.responseType);
}
} catch (ClassNotFoundException e) {
throw new RequestResponseTypeInvalid(testName);
}
,我有可用的类信息在杰克逊使用。我的问题是我需要这样做:
"responseType": "java.util.List<foo>",
否则复杂的json类型解析为hashmaps而不是pojo的。如果需要,我想我可以变得富有创造力,并将一些东西从hashmap转移到pojo,但我想知道是否有任何直接的方法来做到这一点。
我想另一种方法是实现一个工厂类,我可以在属性文件中说list_foo并将工厂类映射到实际的类对象。这不会很困难,但不像使用该属性那么简单。
谢谢
是的,我很害怕这个。哦,我会创建一个工厂。谢谢 – scphantm 2014-10-16 20:46:35