HttpServletRequest请求域对象
HttpServletRequest对象,也能作为 “域对象” 存取数据。
在我们进行请求转发的时候,因为服务器端跨servlet进行处理,通常会涉及数据的传输,这里可以通过:
- ServletContext域对象进行数据存储,全局访问
- 通过HttpServletRequest域对象,因为只有一次请求,所以相同的请求域可以用来存储数据并传输
域对象共有的方法:
java中的域对象
代码实现:
Demo1代码:
public class Demo1Servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("demo1处理完成");
req.setAttribute("demo1","demo1的数据");
req.getRequestDispatcher("/d2").forward(req,resp);
}
}
Demo2代码:
public class Demo2Servlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
System.out.println("demo2处理完成");
response.setContentType("text/html;charset=utf-8");
String string =(String) request.getAttribute("demo1");
PrintWriter writer = response.getWriter();
writer.write(string);
}
}
显示结果:

这篇博客探讨了HttpServletRequest如何作为请求域对象在Servlet之间的数据传输中发挥作用。当进行请求转发时,由于存在跨Servlet处理,使用HttpServletRequest可以存储和传递数据。文章提到了ServletContext全局访问和HttpServletRequest的一次性请求域特性,并列举了Java中域对象的通用方法,同时提供了Demo1和Demo2的代码示例来展示具体实现。

949

被折叠的 条评论
为什么被折叠?



