JSPæ¡ä¾ï¼è®¡ç®ç©å½¢ååçé¢ç§¯ï¼3-6ï¼
ç®å½
1.è¦æ±
ç¼å两个Tagæä»¶Rect.tagåCircle.tagãRect.tagè´è´£è®¡ç®å¹¶æ¾ç¤ºç©å½¢çé¢ç§¯ãç¼åä¸ä¸ªJSP页é¢lianxi6.jspï¼è¯¥JSP页é¢ä½¿ç¨Tagæ è®°è°ç¨Rect.tagåCircle.tagãè°ç¨Rect.tagæ¶ï¼åå ¶ä¼ éç©å½¢ç两个边çé¿åº¦ï¼è°ç¨Circle.tagæ¶ï¼åå ¶ä¼ éåçåå¾ã
2.设计æ¥éª¤
lianxi6.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib tagdir="/WEB-INF/tags" prefix="rec" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>è°ç¨tagæä»¶è®¡ç®é¿æ¹å½¢ååçé¢ç§¯</title>
</head>
<body>
<rec:Rect sideA="2" sideB="3"/>
<rec:Circle radius="3" />
</body>
</html>
Rect.tag
<%@ tag pageEncoding="utf-8" %>
<h4>计ç®é¿æ¹å½¢é¢ç§¯</h4>
<%@ attribute name="sideA" required="true"%>
<%@ attribute name="sideB" required="true"%>
<%! public String getArea(double a, double b)
{
if(a>0&&b>0){
double area = a*b;
return "<br>é¿æ¹å½¢é¢ç§¯ï¼"+ area;
}
else{
return("<br>"+a+","+b+"ä¸è½ææé¿æ¹å½¢");
}
}
%>
<%
out.print("<br>é¿æ¹å½¢ä¸¤æ¡ååå«ä¸ºï¼"+sideA+","+sideB);
double a = Double.parseDouble(sideA);
double b = Double.parseDouble(sideB);
out.println(getArea(a,b));
%>
Circle.tag
<%@ tag pageEncoding="utf-8" %>
<h4>计ç®åå½¢é¢ç§¯</h4>
<%@ attribute name="radius" required="true"%>
<%! public String getArea(double r)
{
if(r>0){
double area = Math.PI*r*r;
return "<br>åå½¢é¢ç§¯ï¼"+ area;
}else{
return "<br>wrong";
}
}
%>
<%
out.print("<br>åçåå¾ä¸ºï¼"+radius);
double r = Double.parseDouble(radius);
out.println(getArea(r));
%>
3.æææ¼ç¤º
4.注æäºé¡¹
1ãè¿è¡çæ¶åä¸å®è¦ä¿è¯èç¦å°jspæä»¶ä¸ï¼å¦ææ²¡æèç¦å°ä¸é¢ä¼æ¥éï¼ç«¯å£è¢«å ç¨ï¼
2ãtagæä»¶ä¸å®è¦æ¾å°WEB-INFçtagsæä»¶å¤¹ä¸ã
5.æ»ç»
ç»å¿ãèå¿ãåºéä¸è¦ç¦èºï¼å¤å·®èµæï¼æ»ä¼å好çã