jsp使用include动态包含计算三角形的面积

<%@ page contentType="text/html;charset=UTF-8" %>
<HTML><body  bgcolor=cyan >
<%
	double a=6.12,b=7.08,c=9.22;
%>
<p style="font-family: 宋体; font-size: 36">
<br>加载_a5_1_include动态包含计算三角形的面积.jsp计算三边为<%=a%>,<%=b%>,<%=c%>的三角形面积.
   <jsp:include page="_a5_1_include动态包含计算三角形的面积.jsp">
     <jsp:param name="sideA" value="<%=a%>"/>
     <jsp:param name="sideB" value="<%=b%>"/>
     <jsp:param name="sideC" value="<%=c%>"/>
   </jsp:include>
</p>
</body></HTML>

_a5_1_include动态包含计算三角形的面积.jsp:

<%@ page contentType="text/html;charset=utf-8" 
 pageEncoding="UTF-8"%>%> 
<%! public String getArea(double a,double b,double c) {
       if(a+b>c&&a+c>b&&c+b>a) {
           double p=(a+b+c)/2.0;
           double area=Math.sqrt(p*(p-a)*(p-b)*(p-c)) ;
           String result = String.format("%.2f", area);//保留两位小数
           return ""+result;
       }
       else { 
          return(""+a+","+b+","+c+"不能构成一个三角形,无法计算面积");
       }
    }
 %>
 <%   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);
 %>
<p style="font-family:黑体;font-size:36;color:blue">
<br><b>我是被加载的文件,负责计算三角形的面积<br>
    给我传递的三边是:<%=sideA%>,<%=sideB%>,<%=sideC%></b>
<br><b><i>三角形的面积(保留2位小数):<%= getArea(a,b,c)%></i></b></i>
</p>


最终效果:
在这里插入图片描述

在设计这个从INPUT.JSP到SHOW.JSPJSP页面流程中,你需要以下几个步骤: 1. INPUT.JSP页面设计: ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <!DOCTYPE html> <html> <head> <title>输入三角形面积</title> </head> <body> <h1>请输入三角形的底和高:</h1> <form action="process.jsp" method="post"> <label for="base">底边长:</label> <input type="number" id="base" name="base" required><br> <label for="height">高度:</label> <input type="number" id="height" name="height" required><br> <input type="submit" value="计算面积"> </form> <%-- 异常处理部分,如果输入的数据不能构成三角形 --%> <% if (/* 校验条件 */) { %> <p>不能构成三角形,请检查您的输入。</p> <% } %> </body> </html> ``` 在这个表单里,用户输入三角形的底和高,然后提交到`process.jsp`。 2. process.jsp处理数据并跳转: ```jsp <%@ page import="java.util.*" %> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <% double base = Double.parseDouble(request.getParameter("base")); double height = Double.parseDouble(request.getParameter("height")); // 判断是否能构成三角形,例如两边之和大于第三边 boolean isValidTriangle = base > 0 && height > 0 && base + height > Math.max(base, height); if (isValidTriangle) { double area = 0.5 * base * height; request.setAttribute("area", area); } // 如果可以构成三角形,转向SHOW.JSP;否则,跳回INPUT.JSP显示错误消息 if (isValidTriangle) { response.sendRedirect("SHOW.JSP?area=" + area); } else { request.getRequestDispatcher("INPUT.JSP").forward(request, response); } %> ``` 在这个处理程序中,我们获取了POST请求的参数,计算面积,并根据判断结果决定下一步操作。 3. SHOW.JSP页面接收并显示结果(假设已包含一个显示面积的区域): ```jsp <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>显示三角形面积</title> </head> <body> <%@ include file="process.jsp" %> <% String area = (String)request.getAttribute("area"); %> <% if (area != null) { %> <h1>三角形面积是: <%= area %> 平方单位</h1> <% } else { %> <p>未提供有效数据,无法显示面积。</p> <% } %> </body> </html> ``` 这里我们通过`include`标签包含了`process.jsp`以获取面积值,然后根据存在与否显示相应信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱睡觉的小馨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值