易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP/Servlet的URL重定向

1.RequestDispatcher.forward() 
是在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到另外一个Servlet,JSP 或普通HTML文件,也即你的form提交至a.jsp,在a.jsp用到了forward()重定向至b.jsp,此时form提交的所有信息在b.jsp都可以获得,参数自动传递. 
但forward()无法重定向至有frame的jsp文件,可以重定向至有frame的html文件,同时forward()无法在后面带参数传递,比如servlet?name=frank,这样不行,可以程序内通过response.setAttribute("name",name)来传至下一个页面. 
重定向后浏览器地址栏URL不变. 
例:在servlet中进行重定向 
代码内容通常在servlet中使用,不在jsp中使用。 
public void doPost(HttpServletRequest request,HttpServletResponse response)  
throws ServletException,IOException   ...{  
    response.setContentType("text/html; charset=gb2312");  
    ServletContext sc = getServletContext();  
    RequestDispatcher rd = null;  
    rd = sc.getRequestDispatcher("/index.jsp"); //定向的页面  
    rd.forward(request, response);  
}
2.response.sendRedirect() 
是在用户的浏览器端工作,sendRedirect()可以带参数传递,比如servlet?name=frank传至下个页面,同时它可以重定向至不同的主机上,sendRedirect()可以重定向有frame.的jsp文件. 
重定向后在浏览器地址栏上会出现重定向页面的URL 
例:在servlet中重定向 
代码内容
public void doPost(HttpServletRequest request,HttpServletResponse response)  
throws ServletException,IOException   ...{  
    response.setContentType("text/html; charset=gb2312");  
    response.sendRedirect("/index.jsp");  
}
由于response是jsp页面中的隐含对象,故在jsp页面中可以用response.sendRedirect()直接实现重定位。
注意: 
(1).使用response.sendRedirect时,前面不能有HTML输出。 
这并不是绝对的,不能有HTML输出其实是指不能有HTML被送到了浏览器


相关文档:

JSP实现论坛树型结构的具体算法

实现论坛树型结构的算法很多,具体你可以去www.chinaasp.com的全文搜索中查询。我现在的JSP论坛采用的也是当中的一种:不用递归实现树型结构的算法,现在我将论坛树型结构的具体算法和大家介绍一下,和大家一起交流。
  1、演示表的结构:
   表名:mybbslist
   字段     数据类型  说明
   BBSID ......

jsp的session详解


http://www.egzcn.com/article/webbc/JSP/2006-03-22/2003.html 来源
摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清楚session机制的本质,以至不能正确的应用这一技术。本文将详细讨论session的工作机制并且对在Java web application中应用session机制时常见的问题作 ......

JSP过滤器原理分析

http://zhangjunhd.blog.51cto.com/113473/20629
1.Servlet过滤器
1.1 什么是过滤器
过滤器是一个程序,它先于与之相关的servlet或JSP页面运行在服务器上。过滤器可附加到一个或多个servlet或JSP页面上,并且可以检查进入这些资源的请求信息。在这之后,过滤器可以作如下的选择:
①以常规的方式调用资源(即,调 ......

全面解析jsp路径问题


如果在一个项目中 的jsp中加入以上代码 那么输出的结果 会是什么呢?
结果:/项目名 
呵呵 自己原来以为只 是得到项目名 或者只是得到\"/\"看了 真是不试不知道呵呵
还有 今天在做项目的时候无意中发现的 
还有“/” 代表的是web项目的根目录 如果在根目录下建了文件夹 直接 写成href=\"p ......

MyEclipse不识别jsp页面中的html标记?

如何知道不识别了呢?
MyEclipse--window--Preperences--MyEclipse--Files and Editors--XML--XML Catalog(若出现红色的叉号表示XML识别不了);
新建user_catalog.xml
(其中I:/Eclipse/CommonPlugins/DTD/ 目录下放置各种从网上下载的dtd文件)
如想添加新的dtd文件,修改此配置文件即可。
<?xml version="1.0" en ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号