国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

如何遍歷并執行一個對象的所有可用方法

2019-11-18 14:46:04
字體:
來源:轉載
供稿:網友

  在struts應用中,對于從數據庫中提取記錄并顯示出來,我們可以在javabean中完成,
但是對于數據庫表格中的每一條記錄,我們可能都要寫出如下代碼,才能將一條記錄
中的各個屬性值寫入一個form對象中,例如對下面一個類test.User

代碼如下:

package test;
import java.io.Serializable;
public final class User implements Serializable {
PRivate String name = null;
private String ps = null;
public String getName () {
   return (this.name);
}
public void setName(String name) {
this.name = name;
System.out.println(name);
}

public String getPs () {

   return (this. ps);

}

public void setPs (String ps) {

   this. ps = ps;
System.out.println(ps);
}

  }

我們可能要寫出如下代碼

//數據庫連接部分
ResultSet rs = conn.executeQuery("select * from user");

while(rs.next()) {
test.User user = new test.User();
user.setName = rs.getString("name");
user.setPs = rs.getString("ps");
//將user對象加入到一個ArrayList對象中
}


這里表格user只有兩個屬性,name和ps,但是當屬性很多時,這樣寫就很麻煩了,
并且對每一個表格來說,這一段代碼都要重新寫,所以我們就想到,能不能通過
遍歷一個類方法,并且執行該類的一個對象的所有方法,讓程序自動去完成這部
分工作呢?

    當然可以,這個問題的重點和難點就在于如何去遍歷
    
    首先,我們必須得到一個類的用戶定義的方法,
    
    方法如下: 我們可以先創建一個類對象(不同于類的對象)
    
    Class newClass = Class.forName(className);
    
    通過該類對象的getDeclaredMethods()方法得到它的方法,如下
    
    Method[] methods = newClass.getDeclaredMethods();
    
    而執行可以通過方法對象的invoke()來執行,
    
    多的話就不說了,下面就是一段代碼:
    
for (int i=0;i<methods.length;i++) {

m = methods[i];

methodName = m.getName();

if(methodName.startsWith("set")) {

propertyName = methodName.substring(3,4).toLowerCase()+methodName.substring(4,methodName.length());

recordValue=rs.getString(propertyName);

if(recordValue==null) recordValue="";

m = newClass.getMethod(methods[i].getName(),new Class[]{recordValue.getClass()});

m.invoke(o,new Object[]{recordValue});

}

}         

這是俺的第一篇文章,如有疑問,可以和我聯系 webmaster@jspcn.net

呵呵

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 台东县| 洛南县| 汤阴县| 大理市| 达州市| 偃师市| 黄大仙区| 浙江省| 华蓥市| 清徐县| 万载县| 静宁县| 长沙市| 和平区| 阿克苏市| 红河县| 曲阜市| 汉阴县| 定南县| 依兰县| 文昌市| 大宁县| 犍为县| 库尔勒市| 马山县| 淳安县| 连云港市| 新乡市| 阿坝县| 师宗县| 富蕴县| 白银市| 牟定县| 剑阁县| 清丰县| 玉田县| 黔江区| 隆德县| 仙游县| 东平县| 新丰县|