制作一个servlet计算阶乘n!客户在表单输入要计算的数字,servlet计算后向客户显示结果
时间: 2024-02-06 09:10:29 浏览: 31
好的,我可以为您提供一个简单的 Java Servlet 代码,用于计算输入数字的阶乘并将结果返回给客户端。以下是代码:
```java
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FactorialServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
try {
// 获取表单输入的数字
int num = Integer.parseInt(request.getParameter("number"));
// 计算阶乘
int fact = 1;
for (int i = 2; i <= num; i++) {
fact *= i;
}
// 返回结果给客户端
out.println("<html>");
out.println("<head><title>阶乘计算结果</title></head>");
out.println("<body>");
out.println("<h1>" + num + " 的阶乘是 " + fact + "</h1>");
out.println("</body></html>");
} catch (NumberFormatException e) {
// 处理无效输入
out.println("<html>");
out.println("<head><title>错误</title></head>");
out.println("<body>");
out.println("<h1>请输入一个有效的整数</h1>");
out.println("</body></html>");
}
}
}
```
这个 Servlet 接收 GET 请求,从表单中获取要计算的数字,并将计算结果返回给客户端。您可以将此代码保存为 `FactorialServlet.java` 文件,并将其部署到您的 Servlet 容器中。然后,您可以在 HTML 表单中使用以下代码将请求发送到该 Servlet:
```html
<form action="FactorialServlet" method="get">
<input type="text" name="number">
<input type="submit" value="计算阶乘">
</form>
```
注意,这个示例代码假设您已经熟悉了 Java Servlet 的开发和部署。如果您还不熟悉 Servlet,请参考相关文档或教程进行学习。