计算圆面积和周长,用MVC模式实现(jsp servlet javabean
时间: 2024-02-25 21:55:38 浏览: 217
好的,我会尽力回答您的问题。首先,让我们来了解一下 MVC 模式。
MVC(Model-View-Controller)是一种软件设计模式,它将应用程序分成三个部分:模型、视图和控制器。模型(Model)表示应用程序的数据和业务逻辑,视图(View)表示用户界面,控制器(Controller)负责将用户输入转换为对模型和视图的操作。
现在,让我们来实现计算圆的面积和周长的功能,并使用 MVC 模式来设计它。
1. 创建一个名为 Circle 的 JavaBean 类,它有两个属性:半径和圆的面积和周长。Circle 类的代码如下所示:
```
public class Circle {
private double radius;
private double area;
private double perimeter;
// 无参构造函数
public Circle() {}
// 有参构造函数
public Circle(double radius) {
this.radius = radius;
this.area = Math.PI * radius * radius;
this.perimeter = 2 * Math.PI * radius;
}
// getter 和 setter 方法
public double getRadius() {
return radius;
}
public void setRadius(double radius) {
this.radius = radius;
this.area = Math.PI * radius * radius;
this.perimeter = 2 * Math.PI * radius;
}
public double getArea() {
return area;
}
public double getPerimeter() {
return perimeter;
}
}
```
2. 创建一个名为 CircleController 的 Servlet 类,它负责处理用户输入和调用 Circle 类来计算圆的面积和周长。CircleController 类的代码如下所示:
```
@WebServlet("/circle")
public class CircleController extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取用户输入的半径
String radiusString = request.getParameter("radius");
double radius = Double.parseDouble(radiusString);
// 创建 Circle 对象并计算面积和周长
Circle circle = new Circle(radius);
// 将结果存储到请求属性中
request.setAttribute("circle", circle);
// 转发到结果页面
RequestDispatcher dispatcher = request.getRequestDispatcher("/circle.jsp");
dispatcher.forward(request, response);
}
}
```
3. 创建一个名为 circle.jsp 的 JSP 页面,它负责显示圆的面积和周长。circle.jsp 的代码如下所示:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Circle Result</title>
</head>
<body>
<h1>Circle Result</h1>
<p>Radius: ${circle.radius}</p>
<p>Area: ${circle.area}</p>
<p>Perimeter: ${circle.perimeter}</p>
</body>
</html>
```
4. 最后,创建一个名为 index.jsp 的 JSP 页面,它包含一个表单,用户可以输入圆的半径,并提交给 CircleController 来计算圆的面积和周长。index.jsp 的代码如下所示:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Circle Calculator</title>
</head>
<body>
<h1>Circle Calculator</h1>
<form action="circle" method="get">
<p>Enter radius:</p>
<input type="text" name="radius">
<br><br>
<input type="submit" value="Calculate">
</form>
</body>
</html>
```
以上就是使用 MVC 模式实现计算圆面积和周长的示例代码。希望对您有所帮助!
阅读全文