聲明javaBean對象,需要使用<jsp:useBean>動作標籤,聲明格式如下:
<jsp:useBean id=“對象名” class=“類名” scope=“有效範圍”/>
使用說明如下:
(1) class屬性:用來指定JavaBean的類名,必須使用完全限定類名(包名+類名)。
(2)id屬性:創建對象的名稱.
(3)scope屬性:所創建的對象的作用範圍,共有4個類型,分別是:page,request,session,application。默認值是page.
例如:
<jsp:useBean id=“c” class=“beans.Add” scope=“session”/>
- 訪問JavaBean屬性---------設置JavaBean屬性值
設置JavaBean屬性值需要使用<jsp:setProperty>動作標籤,該標籤有4種設置方式.
1.簡單JavaBean的屬性設置
在獲得JavaBean實例後就可以對其屬性值進行重新設置,設置屬性值的格式:
<jsp:setPropert name=“對象名” propert="類裏面的屬性名" value="給屬性設置的值">
在設值時,自動實現類型轉換(將字符串自動轉爲JavaBean中屬性所聲明的類型)
例如:給c對象中的兩個屬性值分別賦值爲10和30.
<jsp:useBean id=“c” class=“beans.Add” scope=“session“>
<jsp:setPropert name=“c” property="shuju1"
value="10">
<jsp:setPropert name=“c” property="shuju2" value="30">
2.將單個屬性與輸入參數直接關聯 對於客戶端所提交的請求參數,可以直接給JavaBean實例中的同名屬性賦值,器設置格式爲:
<jsp:setPropert name=“對象名” property="xxx">
將參數名稱爲xxx的值提交給同JavaBean屬性名稱同名的屬性,並自動實現類型轉換.
例如:
<jsp:setPropert name=“c” propert="shuju1"/> //在提交頁面中(tijiao.jsp)存在輸入域參數shuju1
<jsp:setPropert name=“c” propert="shuju2"/> //在提交頁面中(tijiao.jsp)存在輸入域參數shuju1
3.將單個屬性與輸入參數間接關聯 若JavaBean的屬性與請求參數的名稱不相同,則通過JavaBean屬性與請求參數之間的間接關聯實現賦值,器格式如下:
<jsp:setPropert name=“對象名” property="xxx" param=“paramname”/>
假設提交頁面(tijiao.jsp)如下:
<form action="show.jsp" method="post">
數據1:<input name="number1"><br>
數據2:<input name="number2"><br>
<input type="submit" value="提交">
</form>
而設計的Add.java類中的兩屬性名爲:
private int shuju1;
private int shuju2;
由於在JSP頁面和JavaBean中的兩處屬性名不相同,需要採用間接關聯的方式實現傳遞參數.如下:
<jsp:setPropert name=“c” propert="shuju1" param=“number1”/>
<jsp:setPropert name=“c” propert="shuju2" param=“number2”/>
4.將所有的屬性與請求參數關聯將所有的屬性與請求參數關聯實現自動賦值並自動轉換類型,其格式如下:
<jsp:setPropert name=“對象名” property="*/">
功能:將提交頁面中表單輸入域所提供的輸入值提交到JavaBean對象中相同名稱的屬性.
注意:如果不同名則不能賦值.這種方式只是對第一種方法的優化,前提還得是要jsp頁面中與JavaBean類中有相同的屬性名.
- 訪問JavaBean屬性---------獲取JavaBean屬性值並顯示
在JSP頁面顯示JavaBean的屬性值,需要使用<jsp:getProperty>動作標籤.
例如:
<jsp:getProperty name="c" property="shuju1"/>+ <jsp:getProperty name="c" property="shuju2"/>
會在JSP頁面show.jsp上顯示(10+30)。