编写一个servlet,html页面通过表单向Servlet提交一个正实数,Servlet负责计算这个数的平方根返回给客户
时间: 2024-11-22 21:41:15 浏览: 3
leetcode202-LeetCode202_HappyNumber:判断一个数是否为happynuumber,所谓happynumber是
要编写一个Servlet,首先需要创建一个Java类,实现javax.servlet.http.HttpServlet接口,并覆盖doPost()方法处理HTTP POST请求。这里是一个简单的示例:
```java
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.IOException;
public class SquareRootServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取表单提交的正实数
String inputNumber = request.getParameter("inputNumber");
if (inputNumber == null || !inputNumber.matches("\\d+")) {
response.sendError(HttpServletResponse.SC_BAD_REQUEST, "请输入一个正实数");
return;
}
try {
double number = Double.parseDouble(inputNumber);
double squareRoot = Math.sqrt(number);
// 设置响应头并准备输出结果
response.setContentType("text/html;charset=UTF-8");
response.getWriter().println("<h1>输入数字的平方根是:" + squareRoot + "</h1>");
} catch (NumberFormatException e) {
response.sendError(HttpServletResponse.SC_BAD_REQUEST, "无效的输入,请输入一个正实数");
}
}
}
```
然后,在HTML页面上,你可以创建一个表单来发送POST请求到这个Servlet:
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>计算平方根</title>
</head>
<body>
<form action="SquareRootServlet" method="post">
<label for="number">请输入一个正实数:</label>
<input type="text" id="number" name="inputNumber" required>
<br><br>
<button type="submit">计算平方根</button>
</form>
</body>
</html>
```
当用户在表单中输入一个正实数并点击提交按钮,表单数据会通过POST方式发送到`SquareRootServlet`,服务器计算并返回结果。
阅读全文