- 浏览: 446909 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (211)
- java (37)
- spring相关 (3)
- struts (10)
- 面试 (1)
- jsp/servlet (18)
- 持久化框架 (1)
- IT相关新闻 (3)
- 服务器 (11)
- 插件 (4)
- pushlet (3)
- js (24)
- oracle (29)
- mysql (9)
- hibernate (5)
- 开发工具 (6)
- jquery (6)
- 页面标签jstl,el (1)
- linux (25)
- 英语 (1)
- log4j (1)
- html/css (6)
- sqlserver (2)
- dwr (1)
- 设计模式 (4)
- vmware (2)
- office (1)
- eclipse (5)
- svn (1)
- webservice (1)
最新评论
-
18335864773:
建议使用 pageoffice 组件套红
js操作word套红 -
lopez:
数据库系统的客户程序只要向数据库系统声明了一个事务,数据库系统 ...
Hibernate事物控制与管理 -
liujq4512:
删了还是没用
An internal error occurred during: "Initializing Java Tooling". -
elaine0111:
非常感谢这篇文章,嘿嘿,解决了我的问题。我把这段代码保存在我的 ...
Js设置文本框中焦点位置在最后 -
weishuguangeye:
不错!
单例模式(Singleton)
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>
发表评论
-
http:get和post的区别
2011-01-05 16:48 9271. get 是从服务器上获取数据,post 是向服务器传送数 ... -
JSP动态网页程序设计
2010-11-29 10:27 1128JSP(JavaServer Pages): J ... -
写自定义标签时标记attribute里rtexprvalue的用法
2010-10-31 21:08 939其实以前也有写过自定义标签, 但是没有注意到过<rtex ... -
带标签体的标签
2010-10-31 21:08 1357带标签体的标签,就是允许在标签内嵌套标签,通常可用于完成一些逻 ... -
自定义标签控制过长字符串的显示
2010-10-31 21:06 977问题描述: 关于自动换行问题,正常字符的换行是比较合理的,而 ... -
JSP自定义标签执行顺序
2010-10-31 21:05 1095首先来看一下简单标签 ... -
JSP自定义标签开发流程
2010-10-31 21:04 945一、概述 jsp(SUN企业级应用的首选)中有一 ... -
自定义标签问答
2010-10-31 21:03 8521. 什么是自定义标签 ... -
自定义标签类 判断权限
2010-10-31 21:03 1742功能 :判断当前用户是否有权限访问当页面 思路:读取当 ... -
JSP2的自定义标签(简单,带属性,带标签体)
2010-10-31 21:02 2209引用 在JSP规范的1.1版中增加了自定义标签库规范,自定义标 ... -
JSP:自定义标签——开发实例
2010-10-31 21:00 1267【实例109】 开发带属性的标签:helloTagHaveP ... -
JSP自定义标签学习(基础)
2010-10-31 20:57 956自定义标签的最大的特点: 利用 自定义标签,软件开发人员和页面 ... -
关于EL 表达式
2010-10-13 23:10 1146关于EL 表达式 EL表达式总是用大括号括起,而且前面有一个 ... -
JSP、Servlet、Tomcat、JDK、J2EE版本比较(转)
2010-10-03 23:55 704一 JSP2.0与JSP1.2比较 JSP 2.0是对JS ... -
jsp内置对象
2010-04-12 11:27 1084这几天整理项目资料,发现好多东西都快忘记了,因此打算从头整理一 ... -
页面状态响应码
2010-03-29 09:30 1319状态响应码 100~199:表 ... -
JSTL与EL表达式
2010-03-27 14:51 3182取Session中的值 <c:out value=&q ...
相关推荐
html页面跳转大全.pdf
html页面跳转大全2.pdf
js页面跳转js页面跳转js页面跳转js页面跳转
php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转php页面跳转
rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
页面跳转问题页面跳转问题页面跳转问题页面跳转问题页面跳转问题页面跳转问题页面跳转问题页面跳转问题页面跳转问题
页面跳转路由技术,算来并不是一个很新的技术,但却是一项有用的技术。在网站有很多需要跳转的页面,而我们又需要动态地在主页面中加载子页面时,就会用到这门技术。以我们公司现在这个项目为例,前台是由FLEX实现...
qt-quick实现QML页面跳转。支持单页面跳转和多页面跳转。分单页面跳转跟多页面跳转。
页面跳转,权限判断的实例代码
C#中页面跳转的集中方式都列出来,根据具体情况运用
根据背景图片等比放置控件,然后通过消息订阅和发布的...登录界面的输入框显示水印的提示信息,输入值后水印提示消息消失,并且在登录页面的ViewModel中绑定界面中输入的密码的值,每个不同的菜单对应不同的页面跳转
页面自定跳转 超链接 跳转 jsp页面跳转
js实现页面跳转的几种方式
Android 单击实现页面跳转
页面跳转的动画效果
jsp 页面跳转 代码大全 简单的 网站 jsp 页面跳转 代码大全 简单的 网站 jsp 页面跳转 代码大全 简单的 网站 javascript
页面跳转
实现登陆页面跳转到主页面源码
安卓页面跳转动画
android intent 页面跳转 两个activity 之间的互相访问。和数据传递的例子,有问题的 联系我