我曾经多次想要一个库,它给出了一些简单的键值属性,创建了一个地图树(和/或列表)(一个包含地图的地图......想想Java JSON)和/或检索和设置值现有的地图树。
示例(属性顺序很重要):
a.b = "b"
a.c.d = 1
a.e.f[0] = "blah"
以上内容将被解析为Map<String,?>
,其中a
为地图,而c
是a
中的密钥,其中Map
的值包含d
,值为1 ......等。
可视化的方法是作为JSON树:
{
"a" :
{
"b" : "b",
"c" :
{
"d" : 1
},
"e" :
{
"f" :
["blah"]
}
}
}
我遇到过很多次需要像语言一样的简单对象路径,并且通用表达式语言无法正常工作,因为不会自动创建集合。
因此,我在.
编写了我自己的简单拆分并递归创建了地图,但我希望也许有一个经过良好测试的库允许Java对象操作/创建,而不需要通用或图灵的开销完整的表达语言(即Groovy和EL会有点过分)。
我知道Spring有一个DataBinder可以做类似的事情,但它只适用于POJO,不能在一般的Map上工作(这是因为它需要知道如何转换数据,这不是问题)。 / p>
以下是另一个尝试与杰克逊做类似事情的例子:http://pastebin.com/F4feRr8y