1

Java Bean を動的に作成する方法については、次のサンプル コードを参照してください。私が理解できないのは、作成されたインスタンスの状態を更新する方法です。次の例では、foo の値を「footest」に設定するにはどうすればよいでしょうか。

BeanGenerator bg = 新しい BeanGenerator();

bg.addProperty("foo", Double.TYPE);

bg.addProperty("バー", String.class);

オブジェクト Bean = bg.create();

ありがとうクマール

4

1 に答える 1

2

いくつかの方法が思い浮かびます:

1/ リフレクションを使用して「bean」で「setFoo()」を呼び出します。かわいくない。

2/ ヘルパー ライブラリを使用して同じことを行います - 例: Commons-Beanutils oacBeanUtils.PropertyUtils.setProperty(bean, "foo", "footest")。

この方法は私にとってうまくいきます。すでに Spring を使用している場合は、Spring に相当するものを使用できます。

3/ 新しい Bean で CGLIB の BeanMap を使用します。例えば

マップ beanMap = BeanMap.create(bean); beanMap.put("foo", "footest");

于 2011-06-25T11:17:27.620 に答える