我想通過使用「jsp:usebean」從JSP調用Java類的getter方法(返回String值),但它返回空值。我不明白的是爲什麼它不能返回更新的值。Java/Java EE:從JSP調用getter方法
有人可以對此有所瞭解嗎?
我應該使用
Cookie
從JSP獲取值嗎?
我想通過使用「jsp:usebean」從JSP調用Java類的getter方法(返回String值),但它返回空值。我不明白的是爲什麼它不能返回更新的值。Java/Java EE:從JSP調用getter方法
有人可以對此有所瞭解嗎?
我應該使用Cookie
從JSP獲取值嗎?
我不知道你使用的是什麼(Struts中,普通的Servlet等),但本質上,你需要的屬性添加到ServletRequest,如:
class Person {
private String firstName;
// other fields, getters, setters
}
public void method(HttpServletRequest httpServletRequest) {
Person p = new Person();
p.setFirstName("Obama");
httpServletRequest.setAttribute("person", p);
}
,並在你的JSP :
<jsp:getProperty object="person" property="firstName" />
,或者如果您使用JSTL:
<c:out value="${person.firstName}"/>
很簡單。
在java中的文件:
package loga;
class bean{
String name;
public void setName(String Uname)
{
this.name=Uname;
}
public void getName()
{
return name;
}
在JSP文件,調用此方法如:
<jsp:useBean id="object" class="loga.bean">
<jsp:setproperty name="object" property="Name" Value="XXXX"/>
<jsp:getProperty name="object" property="Name"/>
</jsp:usebean>
這裏,屬性指示在Java類的getName()的方法名稱。 要傳遞來自其他控件的值,請使用param屬性並提供控件的名稱。
你能告訴我你的代碼嗎? – 2011-01-14 05:47:04
絕對不要使用cookie來獲取價值。您可能只需要將日誌記錄級別設置爲DEBUG,以便更清楚地瞭解您的bean發生了什麼。 – jmort253 2011-01-14 05:47:15