请问Java高手一个简单的Java问题。 40
高手,您好:小弟现在在学习Java,学到了JavaWeb的环节。今天小弟看到书上说:“dispatcher是以转发的形式完成的页面跳转”,“redirect是以重定向的方...
高手,您好:
小弟现在在学习Java,学到了Java Web的环节。
今天小弟看到书上说:
“dispatcher是以转发的形式完成的页面跳转”,“redirect是以重定向的方式完成的页面跳转”。
问题1:
小弟听说:
Java Web有三种完成页面跳转的方式,希望高手能够为小弟做解答:“第三种Java Web完成页面跳转的方式是什么?”
并且,
问题2:
书上说:“使用dispatcher结果类型是将请求转发到指定的视图资源,所以请求中包含的数据信息依然存在。”“而redirect结果类型是在内部使用HttpServletResponse对象的SendRedirect()方法将请求重定向至指定的URL,这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。” 希望高手能够点拨:
问题2中的“这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。”,这句话的理解,是不是可以定义为:“浏览器首先发送到服务器的第一单请求中所包含的参数信息,在服务器重定向的过程作用下,参数信息被发回到浏览器,浏览器再次把自己的请求发送到服务器的重定向地址”所以产生了:“原先浏览器发送的参数信息丢失,代之以新的、浏览器第二次向服务器发送的第二弹请求的参数信息,所以,从宏观上看,是:”这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。“
高手,小弟一共提出了”问题1“与”问题2“两个问题。
希望高手能够点拨,小弟,在线等。
高手,小弟还有一个问题:
“转发”的概念,是“服务器把用户的请求转发给自己的系统中的某一个类型进行处理。完毕后在本服务器的本类型现场,就把用户的请求响应回写给用户。”还是有其他的“转发”工作流程或者工作方式。
希望高手,能够点拨。
小弟追加10分。 展开
小弟现在在学习Java,学到了Java Web的环节。
今天小弟看到书上说:
“dispatcher是以转发的形式完成的页面跳转”,“redirect是以重定向的方式完成的页面跳转”。
问题1:
小弟听说:
Java Web有三种完成页面跳转的方式,希望高手能够为小弟做解答:“第三种Java Web完成页面跳转的方式是什么?”
并且,
问题2:
书上说:“使用dispatcher结果类型是将请求转发到指定的视图资源,所以请求中包含的数据信息依然存在。”“而redirect结果类型是在内部使用HttpServletResponse对象的SendRedirect()方法将请求重定向至指定的URL,这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。” 希望高手能够点拨:
问题2中的“这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。”,这句话的理解,是不是可以定义为:“浏览器首先发送到服务器的第一单请求中所包含的参数信息,在服务器重定向的过程作用下,参数信息被发回到浏览器,浏览器再次把自己的请求发送到服务器的重定向地址”所以产生了:“原先浏览器发送的参数信息丢失,代之以新的、浏览器第二次向服务器发送的第二弹请求的参数信息,所以,从宏观上看,是:”这意味着请求中包含的参数、属性、Action实例及Action封装的属性将会全部丢失。“
高手,小弟一共提出了”问题1“与”问题2“两个问题。
希望高手能够点拨,小弟,在线等。
高手,小弟还有一个问题:
“转发”的概念,是“服务器把用户的请求转发给自己的系统中的某一个类型进行处理。完毕后在本服务器的本类型现场,就把用户的请求响应回写给用户。”还是有其他的“转发”工作流程或者工作方式。
希望高手,能够点拨。
小弟追加10分。 展开
1个回答
展开全部
java的web貌似只有【转发】和【重定向】两种。
即forward和redirect。
其他形式的转发,实际上都是基于这两种方式的封装。
redirect重定向确实是你想的那样。
例如:
刚开始访问网址【http://127.0.0.1:8080/test/first.jsp】
response.sendRedirect("apage.jsp?参数=我是参数的值")
服务器先返回给浏览器,让浏览器重新访问【apage.jsp?参数=我是参数的值】这个网址。
相当于是重新的一次请求,和上一次完全没关系。
浏览器中的网址中,将显示【http://127.0.0.1:8080/test/apage.jsp?参数=我是参数的值】
forward是服务器直接内部跳转,返回的内容虽然是【apage.jsp?参数=我是参数的值】的。
但是浏览器的网址是【http://127.0.0.1:8080/test/first.jsp】
即forward和redirect。
其他形式的转发,实际上都是基于这两种方式的封装。
redirect重定向确实是你想的那样。
例如:
刚开始访问网址【http://127.0.0.1:8080/test/first.jsp】
response.sendRedirect("apage.jsp?参数=我是参数的值")
服务器先返回给浏览器,让浏览器重新访问【apage.jsp?参数=我是参数的值】这个网址。
相当于是重新的一次请求,和上一次完全没关系。
浏览器中的网址中,将显示【http://127.0.0.1:8080/test/apage.jsp?参数=我是参数的值】
forward是服务器直接内部跳转,返回的内容虽然是【apage.jsp?参数=我是参数的值】的。
但是浏览器的网址是【http://127.0.0.1:8080/test/first.jsp】
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询