「Java」PropertyDescriptorクラスのサンプル

2022年6月26日

PropertyDescriptorは、Java Beanが一対のアクセス用メソッドを使ってエクスポートする単一のプロパティを記述します。
書式
1.PropertyDescriptor(String propertyName, Class<?> beanClass)

アクセス用メソッドgetFooおよびsetFooを使って、標準のJava規約に準拠しているプロパティのPropertyDescriptorを構築します。

2.getDeclaredFields()

このClassオブジェクトが表すクラスまたはインタフェースによって宣言されたすべてのフィールドをリフレクトするFieldオブジェクトの配列を返します。

3.getReadMethod()
プロパティ値の読み込みに使うメソッドを取得します。

使用例

public Map<String, String> reflectObjf(ConfigDO cft) throws Exception {
      Map<String, Object> map = new HashMap<String, Object>();
      Object cft = new Object();
      Class<?> cftClass = cft.getClass();
      Field[] fields = cftClass.getDeclaredFields();
      for (Field field : fields) {
            PropertyDescriptor pd = new PropertyDescriptor(field.getName(), cftClass);
            Method getMethod = pd.getReadMethod();
            Object o = getMethod.invoke(cft);
            map.put(field.getName(), o);
      }
}

 

Java

Posted by arkgame