2012-03-15 46 views
1

我有一個ActionForm類:使用java從一個類獲得getter/setter方法變成一個ActionForm

public class NameForm extends ActionForm { 

private String firstName; 
private String lastName; 

public void setLastName(String lName) { 
    lastName = lName; 
} 

public String getLastName() { 
    return lastName; 
} 

public void setFirstName(String fName) { 
    firstName = fName; 
} 

public String getFirsttName() { 
    return firstName; 
} 
} 

和我有一個包含其他干將其他類/ setter方法,我想在我的行動的形式使用它是:

public class sports { 

private String sport; 
private String team; 
private String position; 

public void setSport(String sp) { 
    sport = sp; 
} 

public String getSport() { 
    return sport; 
} 

public void setTeam(String tm) { 
    team = tm; 
} 

public String getTeam() { 
    return team; 
} 

public void setPosition(String po) { 
    position = po; 
} 

public String getPosition() { 
    return position; 
} 

} 我怎樣才能獲得包含在干將爲體育類到ActionForm中的值,而不創建其他的ActionForm?我正嘗試使用bean從我的操作表單填充我的jsp。

回答

1

爲此,您可以在您的NameForm中創建Sports類型的另一個屬性。

private Sports sports = new Sports(); 

public void setSports(Sports s){ this.sports = s; } 
public Sports getSports(){ return this.sports; } 

然後在您的JSP中,您可以使用類似OGNL的方式訪問它。

%{#attr.sports.team} 
%{#attr.sports.position} 
%{#attr.sports.sport} 
+0

爲什麼你只需要在NameForm中創建一個運動屬性,而不是一個運動,團隊,位置?我不熟悉OGNL如何在腳本代碼中編寫%{#attr.sports.team}它是否會成爲<%= request.getAttribute(「team」)%>?或者如何使用bean寫入? – billy 2012-03-15 23:06:26

+0

你可以用一個腳本來重寫它,例如: <%Sports sports =(Sports)request.getAttribute(「sports」); %>然後你可以在你的scriptlet中做一些類似sports.getTeam()的事情。 – bsimic 2012-03-15 23:57:06

+0

如何使用OGNL從正在從體育項目擴展的課程中獲得屬性?例如,如果我有公共類體育延伸活動。我將如何使用OGNL獲取活動內的對象? – billy 2012-09-30 03:34:28

相關問題