第一个问题:在以下情况下使用哪个范围对象:
第二个问题: RequestDispatcher对象有两个方法,include()
和forward()
。有什么区别?
第3个问题: Servlet使用javax.servlet.http.HttpServletResponse
个对象。你如何使用它来返回文本数据和二进制数据?
答案 0 :(得分:2)
(a)会议范围
RequestDispather.forward()
一旦您将来自Servlet A的请求转发到任何其他Servlet / JSP控件,就会从Servlet A转移到转发的patrty&对于该请求,它永远不会返回给A.
RequestDispather.Include()
在包含你正在做的是如果Servlet A(上面的例子)包含其他Servlet / JSP(比如B或B.jsp)的响应那么暂时控制转到B或B.jsp(他们会生成响应)控制来回到A&生成的响应在A的响应中添加。
检查HttpServletResponse API是否有回复
答案 1 :(得分:0)
答案:
Forward()方法用于将请求从Servlet转发到Servlet / JSP / HTML或JSP转发到Servlet / JSP / HTML
include()方法用于包含Servlet或JSP在另一个Servlet或JSP中的响应
您可以创建一个单独的Servlet类来验证另一个Servlet类的用户ID和密码,它可以通过Servlet Chaining概念来完成。 在验证Server类中,调用请求调度程序将响应转发给Main Servlet类。
例如。
RequestDispatcher rd=req.getRequestDispatcher("url/servlet name");
rd.forward(req,res)