JSP 課后作業(yè):編寫(xiě) Tag 文件計(jì)算矩形规辱、圓形面積

題目

編寫(xiě)兩個(gè) Tag 文件 Rect.tag 和 Circle.tag。Rect.tag 負(fù)責(zé)計(jì)算并顯示矩形的面積叹螟,Circle.tag 負(fù)責(zé)計(jì)算并顯示圓的面積。編寫(xiě)一個(gè) JSP 頁(yè)面 lianxi6.jsp台盯,該 JSP 頁(yè)面使用Tag標(biāo)記調(diào)用 Rect.tag 和Circle.tag罢绽。調(diào)用 Rect.tag 時(shí),向其傳遞矩形的兩個(gè)邊的長(zhǎng)度静盅;調(diào)用 Circle.tag 時(shí)良价,向其傳遞圓的半徑。

項(xiàng)目結(jié)構(gòu)

image.png

代碼

lianxi6.jsp

<%@ page contentType="text/html; charset=UTF-8" %>

<%@ taglib tagdir="/WEB-INF/tags/3.6" prefix="computer" %>
<HTML>
<BODY>
<form action="" method=get name=form>

    <h3>請(qǐng)輸入矩形的長(zhǎng)寬和圓的半徑:</h3>
    <table>
        <tr>
            <td>長(zhǎng):</td>
            <td><input type="text" name="a"></td>
        </tr>
        <tr>
            <td>寬:</td>
            <td><input type="text" name="b"></td>
        </tr>
        <tr>
            <td>半徑:</td>
            <td><input type="text" name="r"></td>
        </tr>
    </table>
    <br> <input type="submit" value="計(jì)算" name=submit>
</form>
<% String a = request.getParameter("a");
    String b = request.getParameter("b");
    String r = request.getParameter("r");
    if (a == null || b == null || r == null) {
        a = "0";
        b = "0";
        r = "0";
    }
    if (a.length() > 0 && b.length() > 0 && r.length() > 0) {
%> <computer:Rect sideA="<%= a%>" sideB="<%= b%>"/>
<computer:Circle radius="<%= r%>"/>
<br> 矩形面積:
<br> <%=area1 %>
<br> 圓形面積:
<br> <%=area2 %>
<% }
%>
</BODY>
</HTML>

Rect.tag

<%@ tag pageEncoding="utf-8" %>
<%@ attribute name="sideA" required="true" %>
<%@ attribute name="sideB" required="true" %>
<%@ variable name-given="area1" variable-class="java.lang.Double" scope="AT_END" %>
<%!
    public double getArea(double a, double b) {
        if (a > 0 && b > 0) {
            double area = a * b;
            return area;
        } else {
            return -1;
        }
    }
%>

<% try {
    double a = Double.parseDouble(sideA);
    double b = Double.parseDouble(sideB);
    double result = getArea(a, b);
    jspContext.setAttribute("area1", new Double(result));
} catch (Exception e) {
    jspContext.setAttribute("area1", new Double(-1.0));
}
%>

Circle.tag

<%@ tag pageEncoding="utf-8" %>
<%@ attribute name="radius" required="true" %>
<%@ variable name-given="area2" variable-class="java.lang.Double" scope="AT_END" %>
<%!
    public double getArea(double r) {
        if (r > 0) {
            double area = Math.PI * r * r;
            return area;
        } else {
            return -1;
        }
    }
%>

<% try {
    double r = Double.parseDouble(radius);
    double result1 = getArea(r);
    jspContext.setAttribute("area2", new Double(result1));
} catch (Exception e) {
    jspContext.setAttribute("area2", new Double(-1.0));
}
%>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市明垢,隨后出現(xiàn)的幾起案子蚣常,更是在濱河造成了極大的恐慌,老刑警劉巖痊银,帶你破解...
    沈念sama閱讀 219,039評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件史隆,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡曼验,警方通過(guò)查閱死者的電腦和手機(jī)泌射,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)鬓照,“玉大人熔酷,你說(shuō)我怎么就攤上這事〔蝰桑” “怎么了拒秘?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,417評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)臭猜。 經(jīng)常有香客問(wèn)我躺酒,道長(zhǎng),這世上最難降的妖魔是什么蔑歌? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,868評(píng)論 1 295
  • 正文 為了忘掉前任羹应,我火速辦了婚禮,結(jié)果婚禮上次屠,老公的妹妹穿的比我還像新娘园匹。我一直安慰自己,他們只是感情好劫灶,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布裸违。 她就那樣靜靜地躺著,像睡著了一般本昏。 火紅的嫁衣襯著肌膚如雪供汛。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,692評(píng)論 1 305
  • 那天涌穆,我揣著相機(jī)與錄音怔昨,去河邊找鬼。 笑死蒲犬,一個(gè)胖子當(dāng)著我的面吹牛朱监,可吹牛的內(nèi)容都是我干的岸啡。 我是一名探鬼主播原叮,決...
    沈念sama閱讀 40,416評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了奋隶?” 一聲冷哼從身側(cè)響起擂送,我...
    開(kāi)封第一講書(shū)人閱讀 39,326評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎唯欣,沒(méi)想到半個(gè)月后嘹吨,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡境氢,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評(píng)論 3 337
  • 正文 我和宋清朗相戀三年蟀拷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片萍聊。...
    茶點(diǎn)故事閱讀 40,102評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡问芬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出寿桨,到底是詐尸還是另有隱情此衅,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評(píng)論 5 346
  • 正文 年R本政府宣布亭螟,位于F島的核電站挡鞍,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏预烙。R本人自食惡果不足惜墨微,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望扁掸。 院中可真熱鬧欢嘿,春花似錦、人聲如沸也糊。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,996評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)狸剃。三九已至掐隐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間钞馁,已是汗流浹背虑省。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,113評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留僧凰,地道東北人探颈。 一個(gè)月前我還...
    沈念sama閱讀 48,332評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像训措,于是被迫代替她去往敵國(guó)和親伪节。 傳聞我的和親對(duì)象是個(gè)殘疾皇子光羞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容