ailin_smile 2009-04-20 21:40
浏览 302
已采纳

服务器跳转和客户端跳转

我才刚开始学习java,学到web这部分一头雾水去不掉,东西说难不难,说简单又不简单。看别人的代码一看就会,轮到自己写代码就手足无措,不知道从哪里下手。
有一个问题困惑我好长时间了,问了几个稍微懂点的,因为是稍微懂点的,反而搞的我像是被水泼一样。
在servlet里面,用于页面跳转时有时候用:re = resquest.getRequestDispatcher(String path);
有时候又用:response.sendRedirect(String location);
这两种方法似乎都能够向跳转的文件传递参数,比如request那个方法path可以等于“index.jsp?num”,而response那个方法location又可以等于‘“index.jsp?num”+num’不懂,这两种用于跳转有什么区别,那两种参数传递的过程又为什么不同呢,长的好像一样。另外,上边的对象re.forward(request,response);又是干什么的呢,我想这个想了好长时间了,我觉得这就好像一道面试题一样,我真的很想全面,详细的把这些问号都去掉。
第一次上javaeye,不会提问,大家见谅,但是希望各位大虾可以帮帮我,不胜感激!!

  • 写回答

3条回答 默认 最新

  • wanghaolovezlq 2009-04-20 22:13
    关注

    forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的地址。
    redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会用刚才请求的所有参数重新请求,所以session,request参数都可以获取。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 k8s生产配置推荐配置及部署方案
  • ¥15 matlab提取运动物体的坐标
  • ¥15 人大金仓下载,有人知道怎么解决吗
  • ¥15 一个小问题,本人刚入门,哪位可以help
  • ¥15 python安卓开发
  • ¥15 使用R语言GD包一直不出结果
  • ¥15 计算机微处理器与接口技术相关问题,求解答图片的这个问题,有多少个端口,端口地址和解答问题的方法和思路,不要AI作答
  • ¥15 如何根据一个截图编写对应的HTML代码
  • ¥15 stm32标准库的PID角度环
  • ¥15 ADS已经下载好了,但是DAS下载不了,一直显示这两种情况,有什么办法吗,非常急!