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 保爾任 閱讀(148) 評論(0)  編輯  收藏

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


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

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 历史| 平谷区| 清远市| 岑巩县| 新晃| 武川县| 黄陵县| 沧源| 广河县| 瑞丽市| 井研县| 平昌县| 钦州市| 井冈山市| 大安市| 南京市| 岳普湖县| 习水县| 灌阳县| 梅河口市| 哈密市| 濉溪县| 白水县| 云梦县| 宜兰市| 香港| 沂南县| 腾冲县| 崇礼县| 巢湖市| 夏邑县| 宣恩县| 大新县| 察雅县| 双柏县| 青川县| 西昌市| 塔河县| 和平区| 五华县| 睢宁县|