编写封装计算矩形的周长和面积的JavaBea n (Rectangle.java),编写网页rectangl e.html 输入矩形的长和宽,如图1所示;编写r ectangle.jsp调用JavaBean分别计算矩形的周长和面积,输出如图2所示。用javaee编程实现代码
时间: 2024-11-30 17:13:58 浏览: 11
首先,我们需要创建一个名为Rectangle的Java Bean来封装矩形的周长和面积计算功能。这是一个简单的Java类:
```java
// Rectangle.java
import javax.servlet.http.HttpSession;
import java.io.Serializable;
public class Rectangle implements Serializable {
private double length;
private double width;
public Rectangle(double length, double width) {
this.length = length;
this.width = width;
}
// 计算周长
public double getPerimeter() {
return 2 * (length + width);
}
// 计算面积
public double getArea() {
return length * width;
}
// 可供JSP获取属性的方法
public void setLength(double length) {
this.length = length;
}
public double getLength() {
return length;
}
public void setWidth(double width) {
this.width = width;
}
public double getWidth() {
return width;
}
}
```
接下来,我们创建一个HTML页面(rectangle.html),用户输入矩形的长和宽:
```html
<!-- rectangle.html -->
<!DOCTYPE html>
<html>
<head>
<title>Rectangle Calculator</title>
</head>
<body>
<form action="calculate" method="post">
Length: <input type="number" id="length" name="length"><br>
Width: <input type="number" id="width" name="width"><br>
<input type="submit" value="Calculate">
</form>
<hr>
<div id="result"></div>
<script src="rectangle.js"></script>
</body>
</html>
```
在`rectangle.js`中,你可以添加客户端验证和异步处理(假设使用Ajax)。
然后,在服务器端,创建一个Servlet(例如,RectangleServlet)来接收POST请求并调用Rectangle Java Bean:
```java
// RectangleServlet.java
import javax.servlet.*;
import javax.servlet.http.*;
import com.example.Rectangle; // 假设你的包名是com.example
public class RectangleServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
HttpSession session = request.getSession();
String lengthStr = request.getParameter("length");
String widthStr = request.getParameter("width");
double length = Double.parseDouble(lengthStr);
double width = Double.parseDouble(widthStr);
Rectangle rectangle = new Rectangle(length, width);
double perimeter = rectangle.getPerimeter();
double area = rectangle.getArea();
session.setAttribute("perimeter", perimeter);
session.setAttribute("area", area);
response.sendRedirect("result.jsp");
}
}
```
最后,创建一个JSP页面(result.jsp)显示计算结果:
```jsp
<!-- result.jsp -->
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Rectangle Result</title>
</head>
<body>
Perimeter: ${session.getAttribute("perimeter")}<br>
Area: ${session.getAttribute("area")}
<!-- 如果需要,可以在此处添加一个表格或数据显示 -->
</body>
</html>
```
这样,当你在浏览器中打开`rectangle.html`填写并提交矩形的长和宽,服务器会计算出周长和面积,并在`result.jsp`上显示结果。记得设置项目的web.xml配置文件以启用Servlet。以上代码只是一个基本框架,实际项目可能需要更复杂的错误处理和UI设计。
阅读全文