A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郭炜 中级黑马   /  2012-3-14 11:24  /  2365 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

、两种跳转方式分别是什么?有什么区别?

3 个回复

倒序浏览
页面有两种方式:
1.forward跳转:<jsp:forward page="跳转页面地址" />

2.response跳转:response.sendRedirect("跳转页面地址");

forward跳转:\\服务器端跳转,地址栏不改变;

response跳转:\\客户端跳转,地址栏改变;

request.getRequestDispatcher("/message.jsp").forward(request, response);
回复 使用道具 举报
     你问的是JSP的两种跳转方式吗?

1、带request参数的跳转
request.setAttribute(“par”, “val”);
request.getRequestDispatcher(“a.jsp”).forward(request, response);
在目的页面可以获取参数
String val = request.getAttribute(“par”)==null?:(String)request.getAttribute(“par”);
2、不带request参数的跳转
response.sendredirect(“a.jsp”);
回复 使用道具 举报
以前总结的 复制一下 呵呵

Sendredirect 重定向
1、是不同的request,send后的语句会继续执行,除非return
2、速度慢
3、需要客户端往返,可转向任何页面
4、地址栏有变化,可以传参数,直接写在url的后面
<%response。sendredirect(“xx.jsp”);%>   <form action="xx.jsp">

Forward(转发)
1、虽然是不同的对象,但是,可以取得上一个页面的内容,forward后的
语句不会继续发送给客户端
2、速度快
3、服务器内部转换
4、可以传参数
this.getServletContext().getRequestDispatcher("xx.jsp").forward(request, response)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马