<properties>
<property name="p1">v1</property>
<property name="p2">v2</property>
</properties>
Properties
これを でオブジェクト
に解析したい{"p1"="v1", "p2"="v2"}
。Commons Digester を使用して、これだけのことができました。
forPattern("properties").createObject()
.ofType(Properties.class);
forPattern("properties/property")
.callMethod("put").withParamCount(2)
.withParamTypes(Object.class, Object.class).then()
.callParam().fromAttribute("name").ofIndex(0).then()
.callParam().ofIndex(1);
Properties
さらに、私が持っているデフォルト オブジェクトも渡したいと思いました。つまり、の代わりに、Properties インスタンスを作成するnew Properties()
必要があります。new Properties(defaults)
私は知っていますが、既存のオブジェクトを引数として.usingConstructor(Properties.class).then()
渡す方法が見つかりませんでした。Properties
v3.3.2 を使用しています。どんな助けでも大歓迎です