JSP——编写三个JSP页面,main.jsp、circle.jsp和ladder.jsp,将三个JSP页面保存在同一个Web服务目录中,

时间:2024-03-26 11:04:18

编写三个JSP页面,main.jsp、circle.jsp和ladder.jsp,

将三个JSP页面保存在同一个Web服务目录中,

main.jsp使用include动作标记加载circle.jsp和ladder.jsp页面。

circle.jsp页面可以计算并显示圆的面积,ladder.jsp页面可以计算并显示梯形的面积。

当circle.jsp和lader.jsp被加载时获取main.jsp页面include动作标记的param子标记提供的圆的半径以及梯形的上底、下底和高的值。

 

1.main.jsp文件的代码编写

<%@page contentType="text/html;charset=utf-8"%>
<html>
    <body>
<%
    double r=3,a=2,b=5,c=2;
 %>
 <br>加载circle.jsp计算半径为<%=r %>的圆的面积:
     <jsp:include page="circle.jsp">
         <jsp:param value="<%=r %>" name="sideR"/>
     </jsp:include>
     <p>---------------------------------------------------------------------</p>
 <br>加载ladder.jsp计算上底、下底、高为<%=a %>,<%=b %><%=c %>的梯形面积
     <jsp:include page="ladder.jsp">
         <jsp:param value="<%=a %>" name="sideA"/>
         <jsp:param value="<%=b %>" name="sideB"/>
         <jsp:param value="<%=c %>" name="sideC"/>
     </jsp:include>
    </body>    
</html>

2.circle.jsp文件的代码编写如下

<%@page contentType="text/html;charset=utf-8"%>
<%!    public String getArea(double r)
    {
        if(r>0)
        {
            double area=r*r*3.14;
            return ""+area;
        }
        else{
            return("半径为"+r+"不能为大于0以外的数字,无法计算面积");
        }
    }
%>
<%
    String sideR=request.getParameter("sideR");
    double r=Double.parseDouble(sideR);
%>
<br><br>我是被加载的文件,负责计算圆的面积<br>
给我传递的半径是:<%=r%>
<br>圆的面积是:<%=getArea(r) %>

 

3.ladder.jsp文件代码编写

<%@page contentType="text/html;charset=utf-8"%>
<%!    public String getArea(double a,double b,double c)
    {
        if(a>0&&b>0&&c>0)
        {
            double area=(a+b)*c/2;
            return ""+area;
        }
        else{
            return("梯形的上底、下底、高"+a+" "+b+" "+c+"不能为大于0以外的数字,无法计算面积");
        }
    }
%>
<%
    String sideA=request.getParameter("sideA");
    String sideB=request.getParameter("sideB");
    String sideC=request.getParameter("sideC");
    double a=Double.parseDouble(sideA);
    double b=Double.parseDouble(sideB);
    double c=Double.parseDouble(sideC);
%>
<br><br>我是被加载的文件,负责计算圆的面积<br>
给我传递的上底、下底、高是:<%=sideA%> <%=sideB %>  <%=sideC %>
<br>梯形的面积是:<%=getArea(a,b,c) %>

4.浏览器显示效果如下图所示

JSP——编写三个JSP页面,main.jsp、circle.jsp和ladder.jsp,将三个JSP页面保存在同一个Web服务目录中,