用MVC的模式求三角形面积(代码上传)JSP页面负责提交三角形的三边以及显示三角形的面积,Servlet负责接收三边,创建模型、选择响应视图,JavaBean负责三角形三边以及面积和是否是三角形的存储。共三个代码
时间: 2025-01-15 07:20:02 AIGC 浏览: 54
好的,下面是一个使用MVC模式实现的三角形面积计算器的示例代码。该示例包括三个部分:JSP页面、Servlet和JavaBean。
### 1. JavaBean (TriangleBean.java)
```java
public class TriangleBean {
private double sideA;
private double sideB;
private double sideC;
private double area;
private boolean isTriangle;
public TriangleBean() {}
public double getSideA() {
return sideA;
}
public void setSideA(double sideA) {
this.sideA = sideA;
}
public double getSideB() {
return sideB;
}
public void setSideB(double sideB) {
this.sideB = sideB;
}
public double getSideC() {
return sideC;
}
public void setSideC(double sideC) {
this.sideC = sideC;
}
public double getArea() {
return area;
}
public void setArea(double area) {
this.area = area;
}
public boolean isTriangle() {
return isTriangle;
}
public void setTriangle(boolean isTriangle) {
this.isTriangle = isTriangle;
}
public void calculateArea() {
if (isValidTriangle()) {
double s = (sideA + sideB + sideC) / 2;
area = Math.sqrt(s * (s - sideA) * (s - sideB) * (s - sideC));
isTriangle = true;
} else {
isTriangle = false;
}
}
private boolean isValidTriangle() {
return (sideA + sideB > sideC) && (sideA + sideC > sideB) && (sideB + sideC > sideA);
}
}
```
### 2. Servlet (TriangleServlet.java)
```java
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;
public class TriangleServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public TriangleServlet() {
super();
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
double sideA = Double.parseDouble(request.getParameter("sideA"));
double sideB = Double.parseDouble(request.getParameter("sideB"));
double sideC = Double.parseDouble(request.getParameter("sideC"));
TriangleBean triangle = new TriangleBean();
triangle.setSideA(sideA);
triangle.setSideB(sideB);
triangle.setSideC(sideC);
triangle.calculateArea();
request.setAttribute("triangle", triangle);
RequestDispatcher dispatcher = request.getRequestDispatcher("result.jsp");
dispatcher.forward(request, response);
}
}
```
### 3. JSP 页面 (index.jsp)
```jsp
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Triangle Area Calculator</title>
</head>
<body>
<h1>Triangle Area Calculator</h1>
<form action="TriangleServlet" method="post">
<label for="sideA">Side A:</label>
<input type="text" id="sideA" name="sideA" required><br><br>
<label for="sideB">Side B:</label>
<input type="text" id="sideB" name="sideB" required><br><br>
<label for="sideC">Side C:</label>
<input type="text" id="sideC" name="sideC" required><br><br>
<input type="submit" value="Calculate Area">
</form>
</body>
</html>
```
### 4. JSP 页面 (result.jsp)
```jsp
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Triangle Area Result</title>
</head>
<body>
<h1>Triangle Area Result</h1>
<%
TriangleBean triangle = (TriangleBean) request.getAttribute("triangle");
if (triangle.isTriangle()) {
%>
<p>The area of the triangle is: <%= triangle.getArea() %></p>
<% } else { %>
<p>The provided sides do not form a valid triangle.</p>
<% } %>
</body>
</html>
```
### 配置 web.xml
```xml
<web-app>
<servlet>
<servlet-name>TriangleServlet</servlet-name>
<servlet-class>TriangleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TriangleServlet</servlet-name>
<url-pattern>/TriangleServlet</url-pattern>
</servlet-mapping>
</web-app>
```
这些代码展示了如何使用MVC模式实现一个简单的三角形面积计算器。JSP页面负责提交用户输入并显示结果,Servlet负责处理请求并选择响应视图,JavaBean负责存储三角形的三边、面积和有效性状态。
阅读全文
相关推荐


















