- 浏览: 1195955 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (434)
- js (20)
- struts2 (77)
- spring (11)
- hibernate (17)
- ssh整合 (9)
- 程序例子 (4)
- 正则表达式 (8)
- JSP (20)
- IDE (15)
- 数据库 (10)
- 工作经验技巧感悟 (21)
- 程序员的幽默 (4)
- windows设置 (4)
- 名词解释 (4)
- 技术入门 (4)
- jFreeChart (16)
- OGNL (5)
- java基础 (46)
- dwr (4)
- portal (1)
- 示例用到的附件 (0)
- 优秀程序员45个习惯 (1)
- webService (1)
- shell (3)
- ibatis (3)
- 开发工具 (1)
- OS (3)
- xmlbean (2)
- design_pattern (0)
- error (1)
- testng (2)
- python (18)
- hadoop (21)
- mapreduce (9)
- Hive (0)
- HBase (0)
- ubuntu (22)
- 多线程 (7)
- 自我改进 (6)
- 设计模式 (1)
- ssh (2)
- ant (4)
- guake (2)
- 云计算 (9)
- hdfs (3)
- 大数据 (1)
- 电信业务 (1)
- maven (2)
- svn (5)
- UML (1)
- 待处理问题 (2)
- log4j (1)
- css (1)
- LevelDb (0)
- thrift (6)
- 辅助工具 (3)
- 算法 (1)
- tornado (0)
- twisted (1)
- jvm (0)
- 图书 (1)
- 其他 (1)
- oracle (2)
- mvn (1)
- 私人信息 (0)
- nio (1)
- zookeeper (1)
- JavaIO (3)
- mongodb (1)
- java-高级 (6)
- spring-深入 (1)
- tomcat (1)
- quartz (1)
- 面试题 (1)
- redis (3)
- EJBCA (0)
- spring-3.0 (1)
- memcache (3)
- 性能检测 (1)
- android (0)
- 开源项目 (1)
- 将博客搬至CSDN (0)
- 架构之路 (1)
最新评论
-
pjwqq:
“子类对象”都拥有了“父类对象的一个实例的引用”我晕,应该是“ ...
java继承--父类属性的存放位置 -
gwgyk:
关于楼主最后的问题,我想可能是这样:InputFormat默认 ...
eclipse 运行hadoop wordcount -
fanjf:
上述7点基本具备,可惜现在因为项目需要,做管理方面工作!
如何判断自己是否具有成为一名优秀程序员的潜质 -
摸爬滚打NO1:
链接已经失效
Eclipse添加JSEclipse 插件(js插件) -
younglibin:
看了以上7条, 自己 也不知道是否能够对上, 感觉没一点都有那 ...
如何判断自己是否具有成为一名优秀程序员的潜质
JSP中的跳转:
(1). forward()方法
使用到javax.servlet.RequestDispatcher类
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar,requestVar); //传递servlet的入口参数
/*forward函数已经把原页面的request,response对象传入新的页面,因此这新旧页面拥有相同的request,response对象。request.getparameter("var")就可以得到相应的值.*/
/*forward()是直接在server做的,浏览器并不知道,也不和浏览器打交道,浏览器的地址不变化。*/
即:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);
服务器端Servlet进行转向的4种方法:
1.ServletContext的getRequestDispatcher()
2.ServletContext的getNamedDispatcher()
3.ServletRequest的getRequestDispatcher()
4.ServletResponse的sendredirect()进行转向。
forward方法,因为这些这样比较高效。只有在forward方法不能使用时,再使用servletresponse的sendredirect()方法。
(2).response.sendRedirect(url);
其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化。新页面不能处理旧页面的pagecontext(request,response,...)对象.
在response.sendRedirect之后,应该紧跟一句return;
(3).HTML语言的自动跳转
<html>
<head>
<meta http-equiv="refresh" content="0;url="http://www.baidu.com">
0是等待时间,如果设置为5表示等待5s后开始跳转
</head>
…………
(4).JavaScript跳转
A: <script languate="javascript">
window.location.replace("http://www.baidu.com");
</script>
B: 也可以直接给window.location属性赋值,window.location="url",与A不同的是有历史记录
C: <script languate="javascript">
document.location.href("http://www.google.com");
</script>
对于document,location不是不是对象,document.location=document.url
D: history对象的forward(),back(),go()方法.go()方法需要一个整形入口参数
<a href="javascript:history.go(-1)">返回上一步</a>
等价于<a href="javascript:history.back()">返回上一步</a>
E: document.formName.action="test.jsp";
document.formName.submit(); //使用JS提交的方式
第一种:
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
第二种:
<script language="javascript">
alert("返回");
window.history.back(-1);
</script>
第三种:
<script language="javascript">
window.navigate("top.jsp");
</script>
第四种:
<script language="JavaScript">
self.location='top.htm';
</script>
第五种:
<script language="javascript">
alert("非法访问!");
top.location='xx.jsp';
</script>
(5).<jsp:forward page="nextpage.jsp"/>
如:
<jsp:forward page="/servlet/login" />
<jsp:forward page="/servlet/login">
<jsp:param name="username" value="jsmith" />
</jsp:forward>
<jsp:forward>标签从一个JSP文件向另一个文件传递一个包含用户请求的request对象.<jsp:forward>标签以下的代码,将不能执行.
可使用了<jsp:param>标签的话向目标文件传送参数和值,目标文件必须是一个动态的文件,能够处理参数.
如果你使用了非缓冲输出的话,那么使用<jsp:forward>时就要小心。如果在你使用<jsp:forward>之前,jsp文件已经有了数据,那么文件执行就会出错.
JSP页面跳转方法荟萃
1. response.sendRedirct("跳转到页面");
该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容. request无法传值过去.
执行完该页所有代码,然后再跳转到页面. 跳转地址栏改变.
可以跳转到其他服务器上的页面response.sendRedirct(http://www.sun.com).
2.response.setHeader(); 该方法和response.sendRedirect一样,通过修改HTTP协议的HEADER部分.
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String
newLocn="/index.html"; response.setHeader("Location",newLocn); % >
3.<jsp:forward page="跳转页面"/>
该方法是利用服务器端先将数据输出到缓冲区的机制,在把缓冲区的内容发送到客户端之前,原来的不发送,改为发送该页面的内容,如果
在<jsp:forward>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意.
request可以传值过去. 直接跳转到页面,后面的代码不执行. 跳转后地址栏不变. 无法跳转到其他服务器上的页面. 图片不是绝对路径无法显示.
4.request.getRequestDispatcher("跳转页面"); request可以传值过去. 执行完该页所有代码,然后再跳转到页面.
跳转地址栏不变. 不可以跳转到其他服务器上的页面 <% RequestDispatcher rd =
request.getRequestDispatcher("to.jsp"); rd.forward(request,response); %>
有以下3种方法可以做到输出重定向: RESPONSE.SETREDERECT("URL")
该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容.
response.sendRedirect("http://localhost:7001/index.html");
下面的方法也能改变HTTP
HEADER属性,它的原理和 1 是一样的
. <%response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn="/index.html"; response.setHeader("Location",newLocn); % >
采用<JSP:FORWORD>
该方法是利用服务器端先将数据输出到缓冲区的机制,在把缓冲区的内容发送到客户端之前,原来的不发送,改为发送该页面的内容,如果在<JSP:
FORWORD>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意.
自己现在知道的在一个jsp页面中嵌套另外一个jsp页面,有三种方法: 1、通过<%@ include
file="header.jsp"%>这种方法只能实现静态页面的加载,最常用是在一个项目中实现通用页头header.jsp和footer.jsp的加载。
2、通过<%@ include page="tt.jsp"%>这种做法可以实现动态页面的加载,但其需要向页面传递参数; 3、通过<iframe
src="jsp的路径">来向页面加载另一个jsp页面,是一个内联框架。
用forward传参数的, 要这样写: <%String str="你已经登陆!"; %>
<jsp:forward page="index.jsp> <jsp:param name="name" value= <%=str%>/>
</jsp:forward>
(1). forward()方法
使用到javax.servlet.RequestDispatcher类
RequestDispatcher rd = getServletContext().getRequestDispatcher("url");
rd.forward(requestVar,requestVar); //传递servlet的入口参数
/*forward函数已经把原页面的request,response对象传入新的页面,因此这新旧页面拥有相同的request,response对象。request.getparameter("var")就可以得到相应的值.*/
/*forward()是直接在server做的,浏览器并不知道,也不和浏览器打交道,浏览器的地址不变化。*/
即:
getServletContext().getRequestDispatcher("url").forward(requestVar,responseVar);
服务器端Servlet进行转向的4种方法:
1.ServletContext的getRequestDispatcher()
2.ServletContext的getNamedDispatcher()
3.ServletRequest的getRequestDispatcher()
4.ServletResponse的sendredirect()进行转向。
forward方法,因为这些这样比较高效。只有在forward方法不能使用时,再使用servletresponse的sendredirect()方法。
(2).response.sendRedirect(url);
其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化。新页面不能处理旧页面的pagecontext(request,response,...)对象.
在response.sendRedirect之后,应该紧跟一句return;
(3).HTML语言的自动跳转
<html>
<head>
<meta http-equiv="refresh" content="0;url="http://www.baidu.com">
0是等待时间,如果设置为5表示等待5s后开始跳转
</head>
…………
(4).JavaScript跳转
A: <script languate="javascript">
window.location.replace("http://www.baidu.com");
</script>
B: 也可以直接给window.location属性赋值,window.location="url",与A不同的是有历史记录
C: <script languate="javascript">
document.location.href("http://www.google.com");
</script>
对于document,location不是不是对象,document.location=document.url
D: history对象的forward(),back(),go()方法.go()方法需要一个整形入口参数
<a href="javascript:history.go(-1)">返回上一步</a>
等价于<a href="javascript:history.back()">返回上一步</a>
E: document.formName.action="test.jsp";
document.formName.submit(); //使用JS提交的方式
第一种:
<script language="javascript" type="text/javascript">
window.location.href="login.jsp?backurl="+window.location.href;
</script>
第二种:
<script language="javascript">
alert("返回");
window.history.back(-1);
</script>
第三种:
<script language="javascript">
window.navigate("top.jsp");
</script>
第四种:
<script language="JavaScript">
self.location='top.htm';
</script>
第五种:
<script language="javascript">
alert("非法访问!");
top.location='xx.jsp';
</script>
(5).<jsp:forward page="nextpage.jsp"/>
如:
<jsp:forward page="/servlet/login" />
<jsp:forward page="/servlet/login">
<jsp:param name="username" value="jsmith" />
</jsp:forward>
<jsp:forward>标签从一个JSP文件向另一个文件传递一个包含用户请求的request对象.<jsp:forward>标签以下的代码,将不能执行.
可使用了<jsp:param>标签的话向目标文件传送参数和值,目标文件必须是一个动态的文件,能够处理参数.
如果你使用了非缓冲输出的话,那么使用<jsp:forward>时就要小心。如果在你使用<jsp:forward>之前,jsp文件已经有了数据,那么文件执行就会出错.
JSP页面跳转方法荟萃
1. response.sendRedirct("跳转到页面");
该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容. request无法传值过去.
执行完该页所有代码,然后再跳转到页面. 跳转地址栏改变.
可以跳转到其他服务器上的页面response.sendRedirct(http://www.sun.com).
2.response.setHeader(); 该方法和response.sendRedirect一样,通过修改HTTP协议的HEADER部分.
<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String
newLocn="/index.html"; response.setHeader("Location",newLocn); % >
3.<jsp:forward page="跳转页面"/>
该方法是利用服务器端先将数据输出到缓冲区的机制,在把缓冲区的内容发送到客户端之前,原来的不发送,改为发送该页面的内容,如果
在<jsp:forward>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意.
request可以传值过去. 直接跳转到页面,后面的代码不执行. 跳转后地址栏不变. 无法跳转到其他服务器上的页面. 图片不是绝对路径无法显示.
4.request.getRequestDispatcher("跳转页面"); request可以传值过去. 执行完该页所有代码,然后再跳转到页面.
跳转地址栏不变. 不可以跳转到其他服务器上的页面 <% RequestDispatcher rd =
request.getRequestDispatcher("to.jsp"); rd.forward(request,response); %>
有以下3种方法可以做到输出重定向: RESPONSE.SETREDERECT("URL")
该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容.
response.sendRedirect("http://localhost:7001/index.html");
下面的方法也能改变HTTP
HEADER属性,它的原理和 1 是一样的
. <%response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); String newLocn="/index.html"; response.setHeader("Location",newLocn); % >
采用<JSP:FORWORD>
该方法是利用服务器端先将数据输出到缓冲区的机制,在把缓冲区的内容发送到客户端之前,原来的不发送,改为发送该页面的内容,如果在<JSP:
FORWORD>之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意.
自己现在知道的在一个jsp页面中嵌套另外一个jsp页面,有三种方法: 1、通过<%@ include
file="header.jsp"%>这种方法只能实现静态页面的加载,最常用是在一个项目中实现通用页头header.jsp和footer.jsp的加载。
2、通过<%@ include page="tt.jsp"%>这种做法可以实现动态页面的加载,但其需要向页面传递参数; 3、通过<iframe
src="jsp的路径">来向页面加载另一个jsp页面,是一个内联框架。
用forward传参数的, 要这样写: <%String str="你已经登陆!"; %>
<jsp:forward page="index.jsp> <jsp:param name="name" value= <%=str%>/>
</jsp:forward>
发表评论
-
javaweb项目RuntimeException不能默认打印到控制台
2012-11-26 15:46 3023前几天搭建了一个框架: 配置 struts2 spring2 ... -
CSS 中 # 和 . 的区别
2011-05-17 10:03 15413id:用来定义页面中大 ... -
在网页右下角弹出提示窗口(完整实例)+参数说明
2010-01-05 10:58 3981<Script language="javas ... -
鼠标经过导航栏改变页面的内容
2010-01-04 16:30 2986用到的css: <style type="t ... -
固定(冻结 )table第一行的列名
2009-12-25 14:35 11824在做数据展示时,出阿里的数据好多,分页后,由于页面显示的范围比 ... -
图片 的超链接带边框
2009-12-25 11:43 3386去掉图片超链接边框颜色: 一种方法是在图片img标签 ... -
<td>……</td>里的字数100,只显示其中20个
2009-12-22 17:33 6750如果不是一定要限制字数,可以限制长度的话 <ta ... -
css实现页面文字不换行、自动换行、强制换行
2009-12-22 15:35 5602强制不换行 div{white-space:nowrap;} ... -
页面在不同屏幕分辨率下存在的问题及解决办法
2009-11-12 11:47 7412页面在不同屏幕分辨率下存在的问题及解决办法(未考虑800*60 ... -
struts2 标签展示 map
2009-09-21 17:59 2233从数据库中查找出来的 ... -
JSP中Servlet生命周期
2009-08-31 08:36 1530Servlet生命周期:以下是 ... -
JSP中response对象
2009-08-31 08:35 3560所属接口:javax.servlet.http.HttpSer ... -
JSP中request对象
2009-08-31 08:34 13056JSP中request对象 Web是请求/响应架构的使用,浏 ... -
JSP的动态导入和静态导入
2009-08-31 08:33 3561JSP的动态导入和静态导入: 1.静态导入时将被导入页面的代 ... -
JSP 的 九 个内置对象
2009-08-27 17:03 1413JSP 的 9 个内置对象 JSP 页面中包含 9 个内置对象 ... -
JSP 的七个动作指令
2009-08-27 10:59 1978动作指令与编译指令不间,编译指令是通知 Servlet 引擎的 ... -
JSP 的三个编译指令
2009-08-27 10:15 1339JSP 三个编译指令: page: 该指令是针对当前页面 ... -
Tree 元素列表一览
2009-08-26 13:13 1476每个结点有一个状态叫做OPEN(打开); 如果结点为OPEN, ... -
JSP页面元素详解
2009-08-26 13:10 1927document方法: getElementById(id) ...
相关推荐
rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
jsp的几种跳转方法,希望能对你们有所帮助
页面自定跳转 超链接 跳转 jsp页面跳转
JSP页面跳转方法汇总,JSP页面跳转方法汇总
java五种jsp页面跳转方法详解 2009-08-21 09:06 1. RequestDispatcher.forward() 是在服务器端起作用,当使用forward()时,Servlet engine传递HTTP请求从当前的Servlet or JSP到 另外一个Servlet,JSP 或普通HTML...
jsp页面的五种跳转方式 java jsp
Springboot+MyBatis+mysql+jsp页面跳转详细示例
JSP,登录跳转页面。包含首页登录页面,判断check页面和最后的成功登录的显示页面
五种JSP页面跳转方法详解,详细的很
五种JSP页面跳转方法详解 1. RequestDispatcher.forward() 2. response.sendRedirect() 3. <jsp:forward page="" /> 4. 修改HTTP header的Location属性来重定向 5. JSP中实现在某页面停留若干秒后,自动重定向到另...
jsp实现页面跳转的方法
一个简单的SpringBoot实例,通过控制器实现jsp页面的跳转。
JSP页面跳转的五种方法,主要通过RequestDispatcher.forward(),response.sendRedirect()等跳转
JSP_页面跳转,JSP_页面跳转,JSP_页面跳转
提供集中jsp页面之间的页面跳转,讲的很详细,共享给大家
本文档提供了jsp页面跳转的各种方式,可以下载,慢慢看!
jsp 实现图片跳转 jsp 实现图片跳转
ajax+jsp 带参数的页面跳转。
先来介绍一下在服务端JSP脚本中跳转页面的几种方法: 1. response.sendRedirct(“跳转到页面”); 该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容. request无法传值过去...
jsp 页面跳转 代码大全 简单的 网站 jsp 页面跳转 代码大全 简单的 网站 jsp 页面跳转 代码大全 简单的 网站 javascript