本文目录
- response.sendRedirect跳转不成功!路径也没有错的
- response.sendRedirect()和request.getRequestDispatcher().forward(request,response)使用
- jsp代码的response对象一直没什么操作处理,为什么最后会有一句response.sendRedirect,response为空吗
- 求教: response.sendRedirect(““); 的用法!!
- 关于response.sendRedirect 为什么这么说
- response.sendredirect为什么跳转不了
- 求jsp中response.sendRedirect()实例;
- forward>和response.sendRedirect两种跳转的区别
- response.sendredirect路径怎么写
- response对象的sendRedirect方法的功能是什么常在什么情况下使用
response.sendRedirect跳转不成功!路径也没有错的
如果你jsp页面是在项目的page目录下建议如下写
response.sendRedirect(request.getContextPath() + “/page/index.jsp“);
其他类似。
你的页面是在根目录下面
response.sendRedirect(request.getContextPath() + /index.jsp“);
response.sendRedirect()和request.getRequestDispatcher().forward(request,response)使用
response是响应。
request是请求。
看你写的两个方法的参数就能看出他们两个的不同。
forward(request,response)里面放的是用户提交过来的请求和将给用户发送的相应,当你是用这个方法将页面跳转到其他jsp页面的时候,你可以在在jsp页面上使用request,response对象。并且这两个对象就是之前你参数传过来的两个对象。也就是说你想要使用多个页面或者servlet处理request和response的时候就需要调用这个方法。
sendRedirect()就相当于直接把括号里的网页结果相应给客户。
举例:登录时。如果失败就需要使用sendRedirect()直接让用户跳转到登录页面让他重新登录。
如果登如果登录成功,那么就是用forward()方法跳转到成功后应该显示的页面。这样用户的登录名之类的信息就可以交给成功页面使用。
jsp代码的response对象一直没什么操作处理,为什么最后会有一句response.sendRedirect,response为空吗
request是客户端向服务端发送的请求,而response则反过来,服务端响应客户端的请求用到的,最后那行代码就是在响应客户端请求了,这里是重定向到一个网页(request里面的数据不会保留
求教: response.sendRedirect(““); 的用法!!
1、首先第一步要知道response和request一样都是jsp内置对象,request是获取用户的请求,response处理用户请求。sendRedirect()函数的作用是重定向网页,向浏览器发送一个特殊的Header,然后由浏览器来做重定向,转到指定的页面。-路径
2、接着就是sex.jsp,注意的是有一个下拉列表和提交按钮确定,选择“男”,就跳转到male.jsp,选择“女”就跳到female.jsp,然后中间通过sex_action.jsp进行重定向。
3、然后就是sponse.sendRedirect(““); 地址栏会改变,request作用域丢失。
这时候注意的是reqeust.getRequestDispatcher(““).forward(request, response);转发request作用域保存即可。
4、最后就是次请求一次响应,这时候注意的是request依然存在,但是重定向是请求两次的,所以作用域丢失了。转发则反之即可。这就是 response.sendRedirect(““); 的用法。
关于response.sendRedirect 为什么这么说
response.sendRedirect是通过浏览器来做转向的,所以只有在页面处理完成后,才会有实际的动作。什么是“页面处理完成后,才会有实际的动作。”?
意思就是在一个请求结束之后.... 假设在A页面设置 request.setAttribute(“username“,“zhangsan“);
那么在 request.sendredirect 转向的B页面中是不能通过request.getAttribute(“username“); 来得到 zhangsan 的。。。
因为上个页面请求已经结束,也就是 request这个已经消亡了。。,所以也就得不到 zhangsan的值了。。
不用那response.sendRedirect
而用 request.getDispatcherHeader(“B.jsp“).forward(request,response);在B页
面就可以所问到 zhangsan
就是这样。。
-s
response.sendredirect为什么跳转不了
1、在使用response.sendRedirect时,前面不能有HTML输出。
这并不是绝对的,不能有HTML输出其实是指不能有HTML被送到了浏览器。事实上现在的server都有cache机制,
一般在8K(我是说JSP SERVER),这就意味着,除非你关闭了cache,或者你使用了out.flush()强制刷新,
那么在使用sendRedirect之前,有少量的HTML输出也是允许的。
如果报错说,“一些信息已经被submitted”(原文忘了),那么,你就要注意看了,前面是不是有过多的HTML输出了。
2、在response.sendRedirect之后,应该紧跟一句return;
我们已经知道response.sendRedirect是通过浏览器来做转向的,所以只有在页面处理完成后,才会有实际的动作。
既然你已经要做转向了,那么后的输出还有什么意义呢?而且有可能会因为后面的输出导致转向失败。
《%@ include file=“/page/checkLogin.jsp“ %》这个放在要验证的页面的第一句。
-路径
求jsp中response.sendRedirect()实例;
response.sendRedirect()是指重定向
跳转的页面文件的相对路径或URL以字符串形式写在括号内
如: response.sendRedirect(“index.jsp“);
response是jsp的内置对象,所以在jsp下直接打response.sendRedirect();了
楼主用实例,还是先要了解他的作用为最好,如果懂了意思也就不用实例了
-s
forward>和response.sendRedirect两种跳转的区别
在JSP中,跳转页面有两种方式:1.forward跳转:《jsp:forward page=“跳转页面地址“ /》2.response跳转:response.sendRedirect(“跳转页面地址“);两种跳转的区别如下:1.forward跳转:a.服务器端跳转,地址栏不改变;b.执行到跳转语句后马上无条件跳转,之后的代码不再执行(跳转之前一定要释放全部资源);c.request设置的属性在跳转后的页面仍可以使用;d.使用《jsp:param name=“参数名“ value=“参数值“ /》传递参数。2.response跳转:a.客户端跳转,地址栏改变;b.所有代码执行完毕后跳转;c.跳转后的页面不能使用上一个页面的request属性;d.使用地址重写传递参数(response.sendRedirect(“URL?参数名=参数值“))。
-路径
response.sendredirect路径怎么写
如果你jsp页面是在项目的page目录下建议如下写
response.sendRedirect(request.getContextPath() + “/page/index.jsp“);
其他类似。
你的页面是在根目录下面
response.sendRedirect(request.getContextPath() + /index.jsp“);
-s
response对象的sendRedirect方法的功能是什么常在什么情况下使用
response.sendRedirect 的功能是地址重定向(页面跳转)
1.response.sendredirect(url);
新的页面并不能处理旧页面的pagecontext(request,response,...)对象,所以你用request.getparameter(ff)企图调用原页面 request对象的参数,得到的自然是null
2.getservletcontext().getrequestdispatcher(url).forward(request,response);
forward函数已经把原页面的request,response对象传入新的页面,因此这新旧页面拥有相同的 request,response对象。request.getparameter(ff)就可以得到相应的值
3.servletcontext.getrequestdispatcher 路径必须是相对上下文的绝对路径 servletrequest.getrequestdispatcher 可以是相对也可以是绝对
服务器端进行转向的4种方法:
1. servletcontext的getrequestdispatcher()
2. servletcontext的getnameddispatcher()
3. servletrequest的getrequestdispatcher()
4. servletresponse的sendredirect()进行转向。
1.2.3 =》 forward() 4. sendredirect()
使用forward方法,因为这些这样比较高效。只有在forward方法不能使用时,再使用servletresponse的sendredirect()方法。
《jsp:fordward》与 sendredirect 方法的比较
虽然 《jsp:fordward》与 sendredirect 方法,都可以将浏览器浏览的网页,重导至另一个网页,但是两者在原理上是不太相同。
a. 《jsp:fordward》 : 动作是利用伺服端,将资料输出至缓冲区的机制,在前一个网页尚未输出到客户端前,取消资料的输出,然后输出另一个网页的资料,达到重导浏览器的效果。 优点: 两网页间可以分享 request 对象内的变量。
b. sendredirect : 动作是透过 网友:alexlovejava 前者是的跳转是的客户端,后者是在服务器端,后者在跳转的时候可以传request对象,前者只能通过?穿参数,后者是forword(),这两者在流转的时候url的路径不一样,在ie地址栏显示的路径也不一样,
-路径