[英]Questions on Servlets
第一个问题:在以下情况下使用哪个范围对象:
第二个问题: RequestDispatcher对象有两个方法, include()
和forward()
。 有什么区别?
第三个问题: Servlet使用javax.servlet.http.HttpServletResponse
对象。 你如何使用它来返回文本数据和二进制数据?
(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以获取响应
回答:
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)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.