3. 设计一个Servlet,该Servlet的作用是将两个整数相加在页面显示出和。两个数从地址栏的请求参数?后给出。然后将这两个整数与算得的和放入session中,跳转到另外一个页面,在另外一个页面中将两个整数和它们的和显示出来。
时间: 2024-05-05 17:21:02 浏览: 92
首先,需要在web.xml文件中配置该Servlet:
```xml
<servlet>
<servlet-name>AddServlet</servlet-name>
<servlet-class>com.example.AddServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AddServlet</servlet-name>
<url-pattern>/add</url-pattern>
</servlet-mapping>
```
然后,创建AddServlet类,实现doGet方法:
```java
package com.example;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
@WebServlet("/add")
public class AddServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
int num1 = Integer.parseInt(request.getParameter("num1"));
int num2 = Integer.parseInt(request.getParameter("num2"));
int sum = num1 + num2;
HttpSession session = request.getSession();
session.setAttribute("num1", num1);
session.setAttribute("num2", num2);
session.setAttribute("sum", sum);
response.sendRedirect("result.jsp");
}
}
```
在doGet方法中,首先获取请求参数num1和num2,并将它们相加得到sum。然后,创建一个HttpSession对象,将num1、num2和sum存入session中。最后,重定向到result.jsp页面。
在result.jsp页面中,可以通过以下方式获取session中存储的值:
```html
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Result</title>
</head>
<body>
<h1>Result</h1>
<p>num1: <%= session.getAttribute("num1") %></p>
<p>num2: <%= session.getAttribute("num2") %></p>
<p>sum: <%= session.getAttribute("sum") %></p>
</body>
</html>
```
在result.jsp页面中,使用session.getAttribute方法获取session中存储的num1、num2和sum值,并在页面上显示出来。
最后,访问地址为:http://localhost:8080/add?num1=1&num2=2,即可看到结果页面。
阅读全文