2014-12-02 147 views
0

内的通用检索对象是否有一个Java库检索使用“路径”到该对象的字符串表示的对象?从另一个对象

例如,假设我有一个对象

Map<String, Map<Integer, Map<String, String>>> myMap; 

MYMAP包含这样

"Dog"->[1,["name","Rex"]],[2,["name","Bowwowser"]] 

数据理想我正在寻找在那里我可以通过在“Dog.1.name的方法“(也许是String.class)并接收一个包含”Rex“的字符串。我不太清楚这个技术名称是什么,尽管这个概念与XPath类似,并且在JSTL的模型中访问数据。

回答

0

JXPath将至少让你接近。我没有测试过这个特殊的例子,但你会看类似的东西:

JXPathContext context = new JXPathContext(myMap); 
String firstDogName = (String)context.getValue("Dog/1/name"); 

然而,根据自己的文件,目前的JXPath只支持String -keyed地图;但如果你有List<Foo>代替你Map<Integer, Foo>你进行设置。