jsp输入页数,实现jsp页面跳转传值到第几页

您现在的位置: &
怎么在JSP中跳转到别一页面
怎么在JSP中跳转到别一页面
  在JSP中使用jsp forward Action来实现页面的跳转功能。
  语法:
  &jsp:forward page=&{relativeURL|&%= expression %&}&/& 或
  &jsp:forward page=&{relativeURL|&%= expression %&}&&
  &jsp:param name=&parameterName&
  value=&{parameterValue|&%= expression %&}&/&+&/jsp:forward&
  这个action使您可以将request向前到另外一个页面。它只有一个属性,page。Page应有一个相对的URL组成。这可以是一个静态的值或者是能够在被请求的时候计算得到的值,就如下面两个例子一般:
  &jsp:forward page=&/utils/errorReporter.jsp&/&
  &jsp:forward page=&&%= someJavaExpression %&&/&
  !supportEmptyParas]&
  现在以一个具体例子来说明:在test1.jsp中使用forward使其跳转到test2.jsp页面中。
  Test1.jsp
  &HTML&
  &HEAD&
  &TITLE&forward test&/TITLE&
  !supportEmptyParas]&
  &/HEAD&
  !supportEmptyParas]&
  &BODY BGCOLOR=&#FFFFFF&&
  &!--跳转到test2.jsp--!&
  &jsp:forward page=&/test2.jsp&/&
  &/BODY&
  &/HTML&
  !supportEmptyParas]&
  test2.jsp
  &HTML&
  &HEAD&
  &TITLE& forward test &/TITLE&
  !supportEmptyParas]&
  &/HEAD&
  !supportEmptyParas]&
  &BODY BGCOLOR=&#FFFFFF&&
  &%out.println(&这是jsp2.jsp页面产生出的输出&);%&
  &/BODY&
  &/HTML&
  !supportEmptyParas]&
  运行test1.jsp,可在浏览器中看见:&这是jsp2.jsp页面产生出的输出&的输出信息。但是如果你在test1.jsp和test2.jsp这两个页面中有参数传递怎么办呢?用get方式吧,不但总的长度有限制,使用现在十分不方便,而且有时候还不安全。其实我们完全可以使用jsp1.1中给forward里提供的para属性就可以解决。现以test3.jsp和test4.jsp来说明。
  !supportEmptyParas]&
  Test1.jsp
  &HTML&
  &HEAD&
  &TITLE& forward test &/TITLE&
  !supportEmptyParas]&
  &/HEAD&
  !supportEmptyParas]&
  &BODY BGCOLOR=&#FFFFFF&&
  &jsp:forward page=&/test4.jsp&&
  &jsp:param name=&name& value=&powerman&/&
  &jsp:param name=&address& value=& 北京西大街188号&/&
  &/jsp:forward&
  &/BODY&
  &/HTML&
  !supportEmptyParas]&
  test2.jsp
  &HTML&
  &HEAD&
  &TITLE&forward test&/TITLE&
  !supportEmptyParas]&
  &/HEAD&
  !supportEmptyParas]&
  &BODY BGCOLOR=&#FFFFFF&&
  out.println(&这是jsp4.jsp页面产生出的输出&+&&br&&);
  out.println(&姓名:&+request.getParameter(&name&)+&&br&&);
  out.println(&地址:&+request.getParameter(&address&)+&&br&&);
  !supportEmptyParas]&
  &/BODY&
  &/HTML&
  运行test3.jsp,可在浏览器中看见:
  &这是jsp4.jsp页面产生出的输出
  姓名:powerman
  地址:北京西大街188号&
  的输出信息
&&&主编推荐
&&&热门试卷
&&&最新视频
&&&热门阅读
&&&最新问答
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&湘教QS2-164&&增值电信业务经营许可证湘B2-您所在的位置: &
在JSP中实现页面跳转
在JSP中实现页面跳转
JSP应用开发是很多编程爱好者的关注,它是实现具体功能的途径,其中页面跳转可以说是非常常用的功能,那么本文就在这个JSP应用开发应用上给你一点思路。
JSP应用开发是很多编程爱好者的关注,它是实现具体功能的途径,JSP实现页面的跳转功能需要使用jsp forward Action。
语法:jsp:forward&page="{relativeURL|%=&expression&%}"/&或 &jsp:forward&page="{relativeURL|%=&expression&%}" &jsp:param&name="parameterName"&value="{parameterValue|%=&expression&%}"/+/jsp:forward &&
这个action使您可以将request向前到另外一个页面。它只有一个属性,page。Page应有一个相对的URL组成。这可以是一个静态的值或者是能够在被请求的时候计算得到的值,就如下面两个例子一般:jsp:forward&page="/utils/errorReporter.jsp"/ &jsp:forward&page="%=&someJavaExpression&%"/ &!supportEmptyParas]&&
现在以一个具体例子来说明:在test1.jsp中使用forward使其跳转到test2.jsp页面中,实现页面跳转。
JSP实现页面跳转之Test1.jspHTML &HEAD &TITLEforward&test/TITLE &!supportEmptyParas]&/HEAD &!supportEmptyParas]&BODY&BGCOLOR="#FFFFFF" &!--跳转到test2.jsp--! &jsp:forward&page="/test2.jsp"/ &/BODY &/HTML &!supportEmptyParas]&&
JSP实现页面跳转之Test2.jspHTML &HEAD &TITLE&forward&test&/TITLE &!supportEmptyParas]&/HEAD &!supportEmptyParas]&BODY&BGCOLOR="#FFFFFF" &%out.println("这是jsp2.jsp页面产生出的输出");% &/BO#@62; &/HTML &!supportEmptyParas]&&
运行test1.jsp,可在浏览器中看见,这样的JSP应用开发:"这是jsp2.jsp页面产生出的输出"的输出信息。但是如果你在test1.jsp和test2.jsp这两个页面中有参数传递怎么办呢?用get方式吧,不但总的长度有限制,使用现在十分不方便,而且有时候还不安全。其实我们完全可以使用jsp1.1中给forward里提供的para属性就可以解决。现以test3.jsp和test4.jsp来说明。!supportEmptyParas]&Test1.jsp &HTML &HEAD &TITLE&forward&test&/TITLE &!supportEmptyParas]&/HEAD &!supportEmptyParas]&BODY&BGCOLOR="#FFFFFF" &jsp:forward&page="/test4.jsp" &jsp:param&name="name"&value="powerman"/ &jsp:param&name="address"&value="&北京市海淀区西三环北路21号久凌大厦北楼505室"/ &/jsp:forward &/BODY &/HTML &!supportEmptyParas]&test2.jsp &HTML &HEAD &TITLEforward&test/TITLE &!supportEmptyParas]&/HEAD &!supportEmptyParas]&BODY&BGCOLOR="#FFFFFF" &% &out.println("这是jsp4.jsp页面产生出的输出"+"br"); &out.println("姓名:"+request.getParameter("name")+"br"); &out.println("地址:"+request.getParameter("address")+"br"); &!supportEmptyParas]&% &/BODY &/HTML &&
运行Test3.jsp,可在浏览器中看见输出信息 :"这是jsp4.jsp页面产生出的输出 &姓名:powerman &地址:北京市海淀区西三环北路21号久凌大厦北楼505室" &&
通过以上的JSP实现的页面跳转是不是很有意思呢?对你再编程的思路是不是有点启发呢?
【编辑推荐】
【责任编辑: TEL:(010)】
关于的更多文章
Angular.js 是一个MV*(Model-View-Whatever,不管是MVC或者MVVM
本次的专刊为大家提供了Oracle最新推出的Java SE 8详细的开发教程,从解读到探究Java 8最新
在过去的近十年的时间里,面向对象编程大行其道。以至
很久很久以前,冬天爱上了夏天,可是他们始终不能相见
流火过,金秋来,在学校开学之前的最后一周,终于凉快
本书是《网管员世界》杂志社推出的一本集知识性和实用性于一身的网络管理技术书籍,书中收集了《网管员世界》自创刊以来“故障诊
51CTO旗下网站1329人阅读
&关于jsp和servlet中实现页面跳转的几种方式:
假设要求从test1.jsp 跳转到test2.jsp
一. jsp中跳转:
1. 使用RequestDispatcher.forward方法转发
&RequestDispatcher rd = getServletContext().getRequestDispatcher(&/test/test2.jsp&);
&rd.forward(request, response);
2. response.sendRedirect 重定向
&& response.sendRedirect(&test2.jsp&);
3.& 使用forward标签
&& &jsp:forward page=&test2.jsp&/&
4. html标记中的meta标记
&& &meta http-equiv=&refresh& content=&0; url=test2.jsp&&
5. 使用response.setHeader
int stayTime=0;
String URL=&test2.jsp&;
String content=stayTime+&;URL=&+URL;
response.setHeader(&REFRESH&,content);
6.&& 使用response.setHeader和response.setStatus 发送重定向请求
& response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
& String newLocation = &test2.jsp&;
& response.setHeader(&Location&,newLocation);
7. 使用javascript脚本
&script type=&text/javascript&&
window.location.href=&test2.jsp&;
二. servlet中跳转:
&假设 从 servlet中跳转到test2.jsp
1. forward
&&ServletContext sc = getServletContext();
&&RequestDispatcher rd = sc.getRequestDispatcher(&/test/test2.jsp&); //定向的页面
&&rd.forward(request, response);
public class ForwardServlet extends HttpServlet {
&public void doGet(HttpServletRequest request, HttpServletResponse response)
&&&throws ServletException, IOException {
&&String id = request.getParameter(&id&);
&&response.setContentType(&text/ charset=gb2312&);
&&ServletContext sc = getServletContext();
&&RequestDispatcher rd = sc.getRequestDispatcher(&/test/test2.jsp&); //定向的页面
&&rd.forward(request, response);
&public void doPost(HttpServletRequest request, HttpServletResponse response)
&&&throws ServletException, IOException {
&&doGet(request, response);
2. sendRedirect
package com.yanek.
import java.io.IOE
import javax.servlet.RequestD
import javax.servlet.ServletC
import javax.servlet.ServletE
import javax.servlet.http.HttpS
import javax.servlet.http.HttpServletR
import javax.servlet.http.HttpServletR
public class RedirectServlet extends HttpServlet {
&public void doGet(HttpServletRequest request, HttpServletResponse response)
&&&throws ServletException, IOException {
&&String id = request.getParameter(&id&);
&&response.setContentType(&text/ charset=gb2312&);
&&response.sendRedirect(&test/test2.jsp&);
&public void doPost(HttpServletRequest request, HttpServletResponse response)
&&&throws ServletException, IOException {
&&doGet(request, response);
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:369360次
积分:6385
积分:6385
排名:第1373名
原创:234篇
转载:96篇
评论:85条
(5)(1)(1)(1)(5)(1)(1)(2)(2)(5)(8)(5)(1)(1)(3)(10)(11)(7)(10)(6)(2)(2)(9)(8)(1)(13)(13)(7)(3)(2)(1)(11)(1)(2)(4)(3)(16)(2)(2)(1)(2)(4)(17)(34)(4)(1)(1)(1)(1)(4)(48)(12)(12)(1)(1)(1)(2)(1)(1)使用struts框架开发,在jsp页面使用什么可以从index.jsp跳转至.do进行数据处理,然后跳转到index_2.jsp页面
使用struts框架开发,在jsp页面使用什么可以从index.jsp跳转至.do进行数据处理,然后跳转到index_2.jsp页面
以前会用servlet进行跳转,现在使用struts,以前那一套不能用,请问struts怎么跳转到.do进行数据处理,谢谢了
补充:项目名company,当在浏览器输入http://localhost:8080/company/ index.jsp时。在index页面中填写什么内容,系统自动跳转.do进行数据获取,然后返回index_1.jsp页面,
在 写action与form-bean 的那个配置文件中写 在forward中写,path改成你要跳转的那个然后在action中execute()方法中写上return mapping.findForward("success")就可以了&&& success与配置文件中的name相对应
其实最主要的是在配置文件中配置,还有在action中写的
试过了,在form表单中不能自动提交,必须手动提交。我想让他自动提交到regist.do中
你的意思是点击运行后,跳到index.jsp 然后不需要点击任何按钮,直接跳到regist.do& 执行,然后跳到index_1.jsp?
恩就是这个意思
form表单是用来提交数据的,不点击任何按钮是没办法提交的,index.jsp就没有意义了
问题就在这里,index,jsp是一个中转页面,跳转到.do中后进行数据获取,然后将获取的数据发送给index_1.jsp。在显示数据。其实我觉的用跳转到一个servlet,进行数据处理也可以。
请问,do中的数据从哪里来?
.do 只能处理数据,数据只能从上一个表单的提交中获取
.do只是一个跳转路径,其实用到的是Struts,在他的实现类中,调用biz中的方法获取数据库中的数据
不好意思啊,我还学到biz中的这个,你尝试一下在index.jsp中直接写一个跳转吧。我猜想吧,如果一定要用到form表单,就直接写一个默认提交的小程序什么的(或者干脆写成一个页面,在那个页面中进行action的全部操作好了)
恩 这么晚了,谢谢你了,有时间在好好聊聊。
的感言:谢谢了
其他回答 (2)
&script language="javascript" type="text/javascript"&&&&& window.location.href(& );&/script&
不用再说其他的吧!
可以在详细点吗,你说的是一个javascript窗体提交。把“ ”换成.do访问方式,在struts中可以执行吗?
在index中 &jsp:forward page=&regist.do&&&/jsp:forward& 或 用struts的标签进行跳转
相关知识等待您来回答
编程领域专家页面导航:
→ 正文内容 网站页面 自动跳转
网站页面自动跳转实现方法PHP、JSP(下)
很多时候我们需要Web页具备有自动跳转功能,例如,论坛中的用户登录、发帖及回复或留言簿中的留言和回复等操作成功后,若用户没有任何鼠标点击操作,过了一定的时间,页面自动跳转到预设的页面。
本文讨论网页自动跳转的几种实现方法。方法一:使用meta标签meta标签是html不可或缺的标签之一,它负责提供文档的元信息,其参数主要有: ① http-equiv: 与 文档中数据相关的HTTP文件首部 ② content: 与命名HTTP首部相关的数据 ③ name: 文档描述 ④ url: 与元信息相联系的URL当我们定义属性http-equiv为refresh,打开此Web页时系统将根据content规定的值在一定时间内跳转到相应页面,content="秒数;url=网址"就是定义了过多长时间跳转到指定的网址。以下meta标签告诉系统一秒钟后页面自动跳转到黑马在线动力: &meta http-equiv="refresh" content="1;url=http://www.jb51.net/"& 以上代码需要加在HTTP文档首部中,介于&head&与&/head&之间,通常,meta标签是紧跟在&head&之后。若需要有多个meta标签,它们可以各占一行。 此法通用于任何环境,包含静态的网站空间。 方法二:使用header函数header函数是php内置函数中的HTTP相关函数之一,该函数送出HTTP协议标头到浏览器。使用它可以重定向URL,即令页面转向其他指定的网页。以下例子,执行后将自动打开黑马在线动力首页: header("Location: http://www.jb51.net/"); 必须注意,header函数只能用在页面代码中的&html&标签之前,亦即,HTTP首部尚未有其他任何标头(&head&)传送给浏览器之前,而且,此前页面也不能print或echo任何内容。换句话说,在页面的&html&出现前,程序只单纯地处理header事件。尽管有如此严格的要求,灵活地使用它,仍然可以达成页面的自动跳转功能,比如登录页面,通过判断用户提交的数据是否合法来决定页面跳转到何处。以下给出一个简单的例子:
代码如下: &?php /* 登录程序 - 文件名:login.php 程序作用 - 判断用户登录口令 */ if($_POST['Submit']) { session_start(); if($_POST['pws']=='123') { //若密码为 123 $_SESSION['passwd']='123'; //写入会话数据 header("Location:index.php"); //跳转到正常页面 }else{ header("Location:login.php"); //跳转到登录页面 } } //表单代码略(也可以用纯html代码写表单,若如此,代码应放在程序之后 ?& &?php /* 检测会话数据 - 文件名:index.php 程序作用 - 检测会话数据中的密码是否为123,若不是,返回 登录页面 */ session_start(); if($_SESSION['passwd']!='123') header("Location:login.php"); //其他代码(纯HTML代码应写在程序之后) ?&
此法显然只能用于支持php的空间环境。 方法三:使用JavaScriptJS非常灵活,利用它可以做出功能非常强大的程序脚本,这里仅举一个简单的页面自动跳转的JS例子。以下代码执行后浏览器将自动转到黑马在线动力网站,该代码可放在页面中的任何合法的位置: &script language="javascript" type="text/javascript"& window.location.href("http://www.jb51.net");&/script&此代码适用于任何Web环境。若加入定时器,将更加妙不可言。 经常遇到页面自动跳转的问题 例如在有些网站需要在退出登录时出现一个提示页面 什么你正在退出只类客套话,有的还要作个倒记时 方法一: &meta http-equiv="refresh" content="‘等待时间';URL=‘跳转页面'"& 方法二: 这是一个js的应用。 测试代码:
代码如下: &input type=button value="点击开始" onClick="t=5"& &span id="view"&&/span& &script& t = -1; // 计数器 setInterval("testTime()",1000); // 启动1秒定时 function testTime() { if(t&0) // 计数器值小于0,表示尚未开始倒计时 if(t == 0) // 计数器值为0,转向 location = "http://www.jb51.net"; view.innerHTML = "&b&"+t+"&/b&"; // 显示倒计时 t--; // 计数器递减 } function offTime() { if(event.srcElement.value != "点击开始") { // 若不是倒计时开始 t = -1; // 初始计数器 view.innerHTML = ""; // 清空倒计时 } } document.onclick = offT // 启动点击事件监视 &/script&
您可能感兴趣的文章:
上一篇:下一篇:
最 近 更 新
热 点 排 行
12345678910

我要回帖

更多关于 jsp页面跳转 的文章

 

随机推荐