我正在尝试在方法中定义Java泛型类型,但无法这样做。我浏览了很多帖子,但还没有弄清楚。
我有一个JSON,它将由Mule Dataweave转换为Java LinkedHashMap
。这是简单的JSON
{
"a": {
"b": {
"c": [{
"name": "abc"
},
{
"name": "xyz"
}
],
"d": "e"
},
"f": "g"
}
}
现在,我想在Java方法中使用转换为LinkedHashMap
的JSON。
我尝试过
public void test(LinkedHashMap<String, LinkedHashMap<String, LinkedHashMap>> payload)
,但是该值可以递归LinkedHashMap
,直到我得到键和值作为String。我不知道它基于JSON响应的深度。如何在Java泛型中定义它?
答案 0 :(得分:0)
由于Java不支持联合类型,因此除了
之外,您无法对此建模public void test(LinkedHashMap<String, Object> payload)
您知道对象是Map <>还是字符串或列表。