转发和重定向

                 servlet和servlet之间可以实现相互跳转,servlet的跳转可以将一个项目的模块进行划分,这样更加方便了开发人员的操作,servlet之间的跳转分为两种,一种是转发,英文名称Forward,另一种是重定向,英文名称Redirect。转发,指转移发放,指的是文件的批转发送;重定向,就是通过)就是通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种重定向)。下面重点详细介绍一下转发和重定向,希望对有需要的小伙伴有帮助,还请大牛们多多指教。
 转发(Forward)
 转发市通过RequestDispatcher对象的Forward(HttpServletRequest request,HttpServletResponse response)来实现的,语法格式如下所示:
RequestDispatcher dispatcher = request.getRequestDispatcher("/servlet/LifeCycleServlet"); dispatcher.forward(request, response);
      servlet页面跳转的路径是相对路径,转发方式只能跳转到本web应用中的页面上,跳转后浏览器地址栏不会改变,转发市最常用的方式,在struts等MVC框架中,都是用servlet来处理用户请求,把结果通过request.setAttribut()放到request中,然后转发到jsp中进行显示,当执行转发方法时,不能有任何输出到达客户端,否则会抛出异常,也就是说,在转发之前,不要使用out.println()语句向客户端输出。代码如下所示:
public void doGet(HttpServletRequest request, HttpServletResponse response)        throws ServletException, IOException {    String destination = request.getParameter("destination");         if("file".equals(destination)){        RequestDispatcher d = request.getRequestDispatcher("/WEB-INF/web.xml");        d.forward(request, response);    }else if("jsp".equals(destination)){        request.setAttribute("date", new Date());  //attributes are reset between requests.        RequestDispatcher dispatcher = 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值