posts - 73,  comments - 55,  trackbacks - 0

          1、提問:關(guān)于動態(tài)取得bean及屬性值的問題
          我現(xiàn)在有一個方法.傳入的是ArrayList ,這里存的是我的一個bean對象.我現(xiàn)在想做到.不論這個arraylist里存的是什么bean,都可以根據(jù)現(xiàn)有的字段名得到這個字段的值.要怎么作呢??我現(xiàn)在的方法是.BeanDescriptor bd = new BeanDescriptor(dataArr.get(recordIndex).getClass());這樣可以得到具體的bean名什么的.但是卻得不到屬性.甚至連屬性名都得不到.要怎么做呢??謝了.

          解決的方法有以下幾種.
          第一;

          package a;

          import java.lang.reflect.Method;

          public class R {
          public static void main(String[] args) throws Exception {
          Object obj = new A("Winner","Hello","OK");//這是一個自定義的bean

          Class clzz = obj.getClass();
          Method[] ms = clzz.getMethods();//得到這個自定義的bean里的所有方法.包括類的get 和set方法.
          for(int i=0;i<ms.length;i++) {
          String mName = ms[i].getName();
          //以下是只得到get方法即屬性值.
          if(mName.startsWith("get")&&!mName.equals("getClass")) {
          System.out.println(ms[i].invoke(obj,null));
          }
          }
          }
          }

          第二種方法.
          Object ob = dataArr.get(recordIndex);//存放在我的arrayList里的自定義bean
          PropertyDescriptor pd = new PropertyDescriptor( currName, ob.getClass());//currName是當(dāng)前的字段名
          Method md = pd.getReadMethod();//取出當(dāng)字段的get方法.
          Object fieldValue = md.invoke(ob, new Object[0]);//得到值.

          第三種方法.
          提到的BeanUtils? 這個開始我沒找到是因為我沒加入類包.這個類是struts里的.
          使用方法網(wǎng)上也有的.

          posted on 2006-07-07 09:31 保爾任 閱讀(149) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 岑巩县| 江陵县| 阿克陶县| 蓬溪县| 从化市| 泽普县| 宁晋县| 讷河市| 疏附县| 南充市| 华池县| 肥东县| 奉节县| 托克逊县| 尉氏县| 丰原市| 合阳县| 依安县| 榆社县| 扬中市| 卫辉市| 东阿县| 郓城县| 阜阳市| 静安区| 响水县| 绥化市| 阿图什市| 呈贡县| 聂荣县| 汶上县| 保定市| 渭南市| 维西| 玉溪市| 城市| 张家界市| 清河县| 高碑店市| 惠州市| 沂南县|