概述
1.编写两个tag文件Rect.tag和Circle.tag。Rect.tag负责计算并显示矩形的面积,Circle.tag负责计算并显示圆的面积。编写一个jsp页面lianxi6.jsp,该jsp页面使用tag标记调用Rect.tag和Circle.tag。调用Rect.tag时,向其传递矩形的两个边的长度;调用Circle.tag时,向其传递圆的半径。
Rect.tag
<%@ tag language="java" pageEncoding="UTF-8"%>
<body>
<h3>矩形面积为:</h3>
<%@ attribute name="highth" required="true"%>
<%@ attribute name="width" required="true"%>
<%!
public double getArea(double h,double w){
double area;
area=h*w;
return area;
}
%>
<%
double h=Double.parseDouble(highth);
double w=Double.parseDouble(width);
out.println(getArea(h,w));
%>
</body>
Circle.tag
<%@ tag language="java" pageEncoding="UTF-8"%>
<body>
<h3>圆的面积为:</h3>
<%@ attribute name="rr" required="true"%>
<%!
public double getArea(double r){
double area;
area=r*r*3.14;
return area;
}
%>
<%
double r=Double.parseDouble(rr);
out.println(getArea(r));
%>
</bod
lianxi6.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@taglib tagdir="/WEB-INF/tags" prefix="computer" %>
<!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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<computer:Rect highth="3" width="6" />
<computer:Circle rr="5"/>
</body>
</html>
结果图
2.编写一个tag文件GetArea.tag负责求出三角形的面积,并使用variable指令返回三角形的面积给调用该tag文件的jsp页面。jsp页面负责显示tag文件返回的三角形的面积。jap在调用tag文件时,使用attribute指令将三角形三边的长度传递给tag文件。one.jsp和two.jsp都使用tag标记调用GetArea.tag。one.jsp将返回的三角形的面积保留最多3位小数,two.jsp将返回的三角形的面积保留最多6位小数。
GetArea.jsp
<%@ tag language="java" pageEncoding="UTF-8"%>
<%@tag import="java.util.*" %>
<%@attribute name="sideA" required="true" %>
<%@attribute name="sideB" required="true" %>
<%@attribute name="sideC" required="true" %>
<%@variable name-given="root" variable-class="java.lang.Double" scope="AT_END" %>
<%
double area;
double a=Double.parseDouble(sideA);
double b=Double.parseDouble(sideB);
double c=Double.parseDouble(sideC);
if(a+b>c&&a+c>b&&b+c>a){
double p=(a+b+c)/2.0;
area=Math.sqrt(p*(p-a)*(p-b)*(p-c));
jspContext.setAttribute("root", new Double(area));
}
else
{
jspContext.setAttribute("root", null);
}
%>
one.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.text.*"%>
<%@taglib tagdir="/WEB-INF/tags" prefix="computer" %>
<!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=UTF-8">
<title>1</title>
</head>
<body>
<computer:GetArea sideA="5.5" sideB="6.5" sideC="7.5"></computer:GetArea>
<%
NumberFormat f=NumberFormat.getInstance();
f.setMaximumFractionDigits(3);
if(root!=null){
double rr=root.doubleValue();
String ss=f.format(rr);
out.println("三角形面积为(保留三位小数):"+ss);
}
else{
out.println("<br>不能构成一个三角形,无法计算面积。");
}
%>
</body>
</html>
two.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.text.*"%>
<%@taglib tagdir="/WEB-INF/tags" prefix="computer" %>
<!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=UTF-8">
<title>2</title>
</head>
<body>
<computer:GetArea sideA="4.5" sideB="5.5" sideC="3.5"></computer:GetArea>
<%
NumberFormat f=NumberFormat.getInstance();
f.setMaximumFractionDigits(6);
if(root!=null){
double rr=root.doubleValue();
String ss=f.format(rr);
out.println("三角形面积为(保留六位小数):"+ss);
}
else{
out.println("<br>不能构成一个三角形,无法计算面积。");
}
%>
</body>
</html>
结果图
最后
以上就是听话小蚂蚁为你收集整理的jsp第三章课后习题的全部内容,希望文章能够帮你解决jsp第三章课后习题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复