编写两个JSP页面a.jsp和b.jsp,a.jsp页面提供一个表单,用户可以通过表单输入矩形的两个边长交给b.jsp页面,b.jsp调用一个request bean去完成计算矩形面积的任务。b.jsp页面使用getProperty动作标记显示矩形的面积。
时间: 2024-10-21 07:04:28 浏览: 139
编写jsp页面实现如下界面效果,然后交给servlet计算矩形的周长和面积,并输出结果。
要编写这样的JSP页面,首先你需要创建一个`RequestBean`,它是一个Java Bean,用于处理从`a.jsp`传递过来的数据并计算矩形面积。以下是步骤:
**Step 1: 创建RequestBean**
```java
// RequestBean.java
import javax.servlet.http.HttpServletRequest;
public class RectangleCalculator implements java.io.Serializable {
private double length;
private double width;
public void setLength(double length) {
this.length = length;
}
public void setWidth(double width) {
this.width = width;
}
public double getArea() {
return length * width;
}
// 使用getter方法获取长度和宽度,用于setProperty操作
public double getLength(HttpServletRequest request) {
String lengthStr = request.getParameter("length");
return Double.parseDouble(lengthStr);
}
public double getWidth(HttpServletRequest request) {
String widthStr = request.getParameter("width");
return Double.parseDouble(widthStr);
}
}
```
**Step 2: a.jsp 页面**
```jsp
<!-- a.jsp -->
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>输入矩形边长</title>
</head>
<body>
<form action="b.jsp" method="post">
<label for="length">长度:</label>
<input type="number" id="length" name="length"><br>
<label for="width">宽度:</label>
<input type="number" id="width" name="width"><br>
<input type="submit" value="计算面积">
</form>
</body>
</html>
```
**Step 3: b.jsp 页面**
```jsp
<!-- b.jsp -->
<%@ page import="your.package.RectangleCalculator" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>矩形面积</title>
</head>
<body>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<c:set var="calculator" value="${RectangleCalculator}" scope="session"/>
<%
double length = calculator.getLength(request);
double width = calculator.getWidth(request);
double area = calculator.getArea();
%>
<p>矩形的面积是: ${area}</p>
</body>
</html>
```
在这个例子中,当用户提交表单后,`a.jsp`的表单数据会被发送到`b.jsp`,`b.jsp`通过`HttpServletRequest`获取长度和宽度,并利用`RequestBean`计算面积。
阅读全文