官术网_书友最值得收藏!

2.3 業務邏輯(模型)層技術

業務邏輯層由JavaBean實現。JavaBean是Java Web程序的重要組件,它是一些封裝了數據和操作的功能類,供JSP或Servlet調用,完成數據封裝和數據處理等功能。

1.JavaBean的設計

設計JavaBean就是編寫Java類,但與普通類不同,有其特殊的設計規則和要求。設計JavaBean通常遵守以下規則。

● JavaBean是一個公共類。

● JavaBean類具有一個公共的無參的構造方法。

● JavaBean所有的屬性均定義為私有。

● 在JavaBean中,需要對每個屬性提供兩個公共方法:getter和setter。

● 定義JavaBean時,通常放在一個命名的包下。

例2-10】設計Web程序,計算任意兩個整數的和值,并在網頁上顯示結果。要求,在JavaBean中實現數據的求和功能。

【分析】該問題需要網頁input.jsp、show.jsp,以及實現數據計算的JavaBean類(Add.java)。其處理流程是:網頁input.jsp提交任意兩個整數,而網頁show.jsp獲取兩個數值后創建JavaBean對象,并調用求和方法獲得和值,然后顯示計算結果。

【設計關鍵】在兩個頁面間利用request對象實現數據共享(利用請求參數shuju1和shuju2)。它們之間的關系如圖2-7所示。

圖2-7 【例2-10】的處理流程

【實現】

1)首先設計實現數據求和的JavaBean類Add.java,其代碼如下。

    package beans;
    public class Add{
        private int shuju1, shuju2, sum;
        public Add(){}
        public int getShuju1(){ return shuju1; }
        public void setShuju1(int shuju1){this.shuju1 = shuju1; }
        public int getShuju2(){return shuju2; }
        public void setShuju2(int shuju2){this.shuju2 =shuju2; }
        public int getSum(){ retrun shuju1+shuju2; }
        public void setSum(int sum){this.sum =sum; }
    }

2)設計提交任意兩個整數的JSP頁面(input.jsp),其主要代碼如下。

    <body>
      <h3>按下列格式要求,輸入兩個整數:</h3><br>
      <form action="show.jsp" method="post">
            加數:<input name="shuju1"><br><br>
            被加數:<input name="shuju2"><br><br>
            <input type=submit value="提交">
      </form>
    </body>

3)計算并顯示計算結果的show.jsp,其主要代碼如下。

    <body>
        <jsp:useBean id="c" class="beans.Add" scope= "request"/>
        <jsp:setProperty name="c" property="*"/>
        <p>調用jsp:getProperty作標簽顯示結果值:<br>
          <jsp:getProperty name="c" property="shuju1"/>+
          <jsp:getProperty name="c" property="shuju2"/>=
          <jsp:getProperty name="c" property="sum"/>
        </p>
    </body>

【運行測試】啟動頁面input.jsp,按提示輸入數據并提交,然后顯示結果。

主站蜘蛛池模板: 白河县| 大英县| 阳东县| 麻江县| 延津县| 小金县| 霍州市| 同江市| 新源县| 会同县| 东乡| 鄱阳县| 嘉义县| 江阴市| 托克托县| 天门市| 永宁县| 汨罗市| 辉南县| 两当县| 三都| 云和县| 江口县| 石狮市| 绩溪县| 肥西县| 昭平县| 金昌市| 昔阳县| 津南区| 扬州市| 星子县| 林甸县| 易门县| 临澧县| 张家港市| 乌兰浩特市| 定安县| 通河县| 桦川县| 长岭县|