JavaEE通过response实现请求重定向
请求重定向指的是一个web资源收到客户端请求后,通知客户端去访问另外一个web资源,这称之为请求重定向。302状态码和location头即可实现重定向。
请求重定向最常见的应用场景就是用户登录。 下面的示例代码从另一个页面重定向到用户登录页面:
package com.yyz.response;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ResponseDemo extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setHeader("location", "/day06/register.html");
response.setStatus(302);
//上面两句代码等同于下面这句代码:
//response.sendRedirect("/day06/register.html");
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request,response);
}
}
请求重定向的两个显著的特点:1.向服务器发送了两次请求。2.地址栏发生改变。由于服务器优化的一个重要原则是减少请求发送的次数,因而要少用请求重定向。
相关推荐
-
java用重定向方法从文件中读入或写入数据
用重定向方法从文件中读入或写入数据 1.问题描述 先产生10000个随机数,每十个一行,放入文件中.(用重定向方法) 用重定向方法,从文件中读入10000个数字,打印出前十名.(不许调用排序方法) 2.程序如下: 2.1 写入 import java.util.Scanner; import java.util.List; import java.util.ArrayList; public class A{ static void to_txt(){ for(int i=1;i<=100
-
Java中重定向输出流实现用文件记录程序日志
System中的out,error都是final类型的,不能做改动.但通过setOut()可以设置新的输出流,从而实现写日志的功能. import java.io.PrintStream; import java.io.FileNotFoundException; public class RedirectOutputStream { public static void main(String arg[]){ try{ PrintStream out = System.out; //保留原输出
-
java转发和重定向的区别
重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的方法来调用目标页面,新的页面继续处理同一个请求,而浏览器将不会知道这个过程. 与之相反,重定向方式的含义是第一个页面通知浏览器发送一个新的页面请求.因为,当你使用重定向时,浏览器中所显示的URL会变成新页面的URL, 而当使用转发时,该URL会保持不变.重定向的速度比转发慢,因为浏览器还得发出一个新的请求.同时,由于重定向方式产生了一个新的请求,所以经过一次重定向后,request内的对象将无法使用. 怎么选择是重定向还是转发
-
java 转发和重定向区别及实例代码
java中转发和重定向 转发: request.getRequestDispatcher("success.jsp").forward(request,response); 在服务器组件收到用户请求后.经过它的处理后有传递给了另一个组件.不修改用户的请求码.各组件处理完之后在返回给用户,例如主页面的框架. 用户请求----->服务器------->组件1------->组件2------->服务器------->用户 (请求不变) 重定向: respons
-
java实现301跳转和重定向的方法
java301跳转和重定向 复制代码 代码如下: response.setStatus(301); response.setHeader("Location","http://www.baidu.com"); //---分割线--- response.sendRedirect("http://baidu.com"); 以上就是本文的全部内容了,希望大家能够喜欢.
-
JavaEE通过response实现请求重定向
请求重定向指的是一个web资源收到客户端请求后,通知客户端去访问另外一个web资源,这称之为请求重定向.302状态码和location头即可实现重定向. 请求重定向最常见的应用场景就是用户登录. 下面的示例代码从另一个页面重定向到用户登录页面: 复制代码 代码如下: package com.yyz.response; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet
-
Java请求转发和请求重定向区别详解
目录 前言 1.定义不同 2.请求方不同 3.数据共享不同 4.最终 URL 地址不同 5.代码实现不同 总结 前言 在 Java 中,跳转的实现方式有两种:请求转发和请求重定向,但二者是完全不同的,所以我们今天就来盘它. 请求转发和请求重定向主要区别,包含以下 5 点: 定义不同 跳转方不同 数据共享不同 最终 URL 地址不同 代码实现不同 接下来,我们一个一个来看. 1.定义不同 请求转发(Forward):发生在服务端程序内部,当服务器端收到一个客户端的请求之后,会先将请求,转发给目标地
-
Java Servlet请求重定向的方法
HttpServletResponse接口的sendRedirect()方法可用于将响应重定向到另一个资源,它可以是Servlet,Jsp或Html文件. 它接受相对和绝对URL. 它在客户端起作用,因为它使用浏览器的网址栏发出另一个请求.因此,它可以在服务器内部和外部工作. 1 转发和重定向的区别 RequestDispatcher的forward()方法与HttpServletResponse接口的sendRedirect()方法之间有很多区别.具体区别如下: forward()方法 sen
-
JavaWeb中请求转发和请求重定向的区别以及使用
什么是请求转发? 请求转发是指,服务器收到请求后,从一次资源跳转到另一个资源的操作. 请求转发的特点 1.浏览器地址栏不会发生变化 2.他们一次请求,服务器完成转发操作 3.共享Request域中的数据 4.可以转发到WEB-INF目录下 5.不可以访问工程以外的资源 举个例子: 1.一个公司有多个部门,其中部门1(Servlet1)向客户提供了自己能够提供的服务,但是还有一部分服务自己提供不了,需要其他部门的服务: 2.所以部门1(Servlet1)将客户的文件盖一个章,证明部门1已经提供了服
-
jsp Response对象页面重定向、时间的动态显示
Response对象 response对象主要用于对客户端的请求进行回应,将web服务器处理后的结果发回给客户端,封装了jsp产生的响应,并发送到客户端响应客户端的请求,请求的数据可以是各种数据类型,甚至是文件. 常用的方法:void addCookie(Cookie c) 添加一个Cookie对象,用来保存客户端用户信息. 比如一些登录操作是否记住用户名等等.void setHeader(String name,String value) 常用的有刷新操作和定时跳转页面. response.s
-
JavaEE中用response向客户端输出中文数据乱码问题分析
Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象,和代表响应的response对象.request和response对象既然代表请求和响应,那我们要获取客户机提交过来的数据,只需要找request对象就行了.要向客户机输出数据,只需要找response对象就行了. 复制代码 代码如下: package com.yyz.response; import java.io.IOException; import java.io.OutputStr
-
htaccess 将所有请求重定向到某个URL地址的规则
复制代码 代码如下: RewriteEngine On RewriteCond %{REQUEST_URI} !=/tempIndex.html RewriteRule ^ /tempIndex.html [R=301]
-
详解spring mvc 请求转发和重定向
请求重定向与请求转发的比较,HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有很大的区别. 1.RequestDispatcher.forward方法只能将请求转发给同一个Web应用中的组件,HttpServletResponse.sendRedirect不仅可以重定向到当前应用程序的其他资源,还可以重定向到同一个站点上的其他应用程序的资源,甚至是使用绝对
-
java实现响应重定向发送post请求操作示例
本文实例讲述了java实现响应重定向发送post请求操作.分享给大家供大家参考,具体如下: 关于重定向我们用的比较多的还是redirect:重定向,默认发送的get请求. return "redirect:/index"; 但有时候请求地址必须为post请求,比如security登录就只能接收post请求,下面来看一下如何后台如何发送post请求响应重定向. 首先可以定义一个map,用于存放参数键值对 Map<String, String> parameter = new
-
Javaweb请求转发及重定向实现详解
请求转发:在同一个controller将请求转发到另一个请求映射,请求地址不会发生改变 //请求转发 @RequestMapping("/testFoeward") //@ResponseBody public String testforWard1() { System.out.println("testforWard1执行了"); return"forward:/test";// 请求转发到/test } @RequestMapping(&q
随机推荐
- python实现在目录中查找指定文件的方法
- AngularJS 实现弹性盒子布局的方法
- bat、vbs、js 原生混编(一个bat可以执行vbs,js代码)
- Spring boot 添加jsp支持配置详解
- Java动态代理的应用详解
- 详解ASP.NET 页面之间传值的几种方式
- JavaScript函数节流和函数防抖之间的区别
- PHP模板解析类实例
- Python简单删除目录下文件以及文件夹的方法
- jQuery 跨域访问问题解决方法
- Java枚举的使用方法详解
- jQuery实现jQuery-form.js实现异步上传文件
- linux 内存管理机制详细解析
- 基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
- jquery操作ID带有变量的节点实例
- JavaScript中的排序算法代码
- 根据鼠标的位置动态的控制层的位置
- 支付宝支付开发——当面付条码支付和扫码支付实例
- 遍历指定目录,并存储目录内所有文件属性信息的php代码
- 如何防治冬季手脚干裂