Servlet的请求转发-创新互联

今天我们来介绍servlet的请求转发,通常在我们的实际开发中,由于功能的需求,可能一个servlet不足以实现一个功能,那么这时我们就需要多个servlet来实现该功能,就是通过servlet来去调用其他的servlet。

10年积累的成都网站建设、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有瑞安免费网站建设让你可以放心的选择与我们合作。

我们通过HttpServletRequest对象有一个getRequestDispatcher()方法,可以获得一个分发器,将我们需要转发的资源名写进去,然后调用forward()。这里我们需要注意一下,我们这个给hrrpServletRequest是一个域对象,它可以setAttribute往里面放入数据,getAttribute。因此我们在转发时,将我们的request对象穿给我们的目标servlet,那么我们的目标servlet就可以使用我们放入的数据了。

RequestDispatcher requestDispatcher = req.getRequestDispatcher("/registerServlet");
        requestDispatcher.forward(req,resp);

servlet是如何实现请求转发的

我们都知道,浏览器发送一个请求到服务器,服务器将请求封装然后找到对应的servlet对业务进行处理,那么这时我们就可以使用请求转发,tomcat就会对应的根据我们的资源名找到servlet,再在下一个servlet进行业务的处理,然后然会数据给浏览器,这里需要注意的是,我们请求转发的所有的过程,都只是在服务端完成的,没有涉及到客户端/浏览器,浏览器的状态栏的地址是没有更改的,一般我们使用请求转发完成一个用户信息的校验,根据用户输入的ID等,判断用户是什么身份,然后请求转发到对应的界面,在进行多次的请求转发,仍然只是一次的Http请求,可以转发到web-info的资源。

接下来我们就来介绍请求转发的流程,由于请求转发是在服务器内部完成的,所以我们使用的request对象的getrequestdispatcher的分发器,我们可以使用这个分发器来指定我们转发的位置,然后调用foward(request,response)来进行转发,如果我们请求转发的资源是servlet,tomcat(服务器)就会根据web.xml文件找到指定的servlet,最后所有的业务都完成后,servlet就会将数据返回给服务器,再由服务器将资源封装成http响应的形式发送给浏览器,浏览器则会以响应的方式获取数据

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前文章:Servlet的请求转发-创新互联
本文链接:http://azwzsj.com/article/dgccpd.html