来讨论吧!!!关于servlet的生成期问题,烦啊!!!!请看以下程序!!!!!!!!!!!!!!!!!!!!!!!

theodo 2004-10-10 02:31:06
我在servlet里用这样的代码转页面的,为什么在浏览器地址里总是显示为登陆时的servlet地址呢?一直不知道为什么?
代码如下:
this.getServletConfig().getServletContext().getRequestDispatcher(
"/index.jsp").forward(request, response);
我这样不是调转到index.jsp了吗?

浏览器应该显示为http://localhost:8080/web/index.jsp
为什么浏览器总是显示网址为http://localhost:8080/web/loginservlet

我的程序中好多地方都是这样写的.运行程序没问题。这样是什么原因,对以后有什么影响吗?
...全文
26 点赞 收藏 3
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
theodo 2004-10-11
请问在servlet中怎么用啊?
回复
daemonys 2004-10-10
说得很混乱,都颠倒了
回复
Argentia 2004-10-10
贴点东西给你:

JSP/Servlet服务器端的重定向
  可以有两种方式,一是使用HttpServletReponse的sendRedirect()方法,一是使用RequestDsipatcher的forward()方法。在jsp页面中,前者即是<jsp:forward page="....jsp">,后者即是"response.sendRedirect()".


  两者的区别是,后者(即forward)仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示转向后的地址;而前者(sendRedirect)则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求。
  后者的效率会高一些,但如果要跳到另一个服务器上的URL则须用前者。

回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告