本文实例为大家分享了servlet重定向的具体内容,供大家参考,具体内容如下

1.重定向是什么?
这里说的重定向是由http协议规定的一种机制。其工作流程如下所述。
(1)客户端发起http请求,访问服务器端组件。
(2)服务器端返回一个状态代码为302的响应结果。该代码的意思是让浏览器再访问另一个组件,响应结果中包含着访问新组件的url地址。新的访问组件可能在同一个应用中也可能不在同一个应用中。
(3)当浏览器接受到这种结果,会自动访问新的url.
(4)浏览器端接受新的url返回结果。
2.实现
重定向通过Servlet API 中HttpServletReponse接口提供的 sendRedirect(String location)方法完成。
3.重定向特点
3.1 servlet源组件的响应结果不会返回到客户端。
3.2 servlet源组件和目标组件不会共享同一个ServletRequest对象。
3.3 如果源组件在进行重定向前提前提交响应结果,会报异常。
3.4 重定向的地址不必是同一个服务器的应用。
4.案例
Check1Servlet 第一次请求的类
package com.learn;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* Created by Administrator on 2017/09/28.
*/
public class Check1Servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String userName = req.getParameter("name");
String message = "";
if(userName == null){
message = "please input your name";
} else {
message = userName;
}
req.setAttribute("mess",message);
PrintWriter out = resp.getWriter();
out.print("before redirect ");
System.out.println("before redirect");
resp.sendRedirect("out1?mess="+message);
out.print("after redirect");
System.out.println("after redirect");
out.close();
}
}
Out1Servlet 重定向的类
package com.learn;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
/**
* Created by Administrator on 2017/09/28.
*/
public class Out1Servlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String mess = (String) req.getAttribute("mess");
System.out.println("请求范围内的数据:"+mess);
mess = req.getParameter("mess");
System.out.println("请求参数中的:"+mess);
PrintWriter out = resp.getWriter();
out.write(mess);
out.close();
}
}
控制台输出结果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# servlet
# 重定向
# servlet配置方法及其生命周期详解
# Servlet生命周期与工作原理详解
# 基于servlet的执行原理与生命周期(全面解析)
# 带你快速上手Servlet
# Servlet方法生命周期及执行原理详解
# 会报
# 具体内容
# 客户端
# 是由
# 中也
# 大家分享
# 所述
# 含着
# 大家多多
# 工作流程
# 在同一个
# nbsp
# sendRedirect
# HttpServletReponse
# location
# String
# br
# Check1Servlet
# class
相关文章:
长春网站建设制作公司,长春的网络公司怎么样主要是能做网站的?
建站之星微信建站一键生成小程序+多端营销系统
如何快速使用云服务器搭建个人网站?
建站之星多图banner生成与模板自定义指南
香港服务器部署网站为何提示未备案?
网站制作公司排行榜,抖音怎样做个人官方网站
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
如何通过商城自助建站源码实现零基础高效建站?
武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?
php能控制zigbee模块吗_php通过串口与cc2530 zigbee通信【介绍】
高防服务器租用首荐平台,企业级优惠套餐快速部署
制作网站的模板软件,网站怎么建设?
如何在景安云服务器上绑定域名并配置虚拟主机?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
如何通过远程VPS快速搭建个人网站?
C#怎么使用委托和事件 C# delegate与event编程方法
Python lxml的etree和ElementTree有什么区别
专业网站制作服务公司,有哪些网站可以免费发布招聘信息?
如何在阿里云购买域名并搭建网站?
如何在橙子建站上传落地页?操作指南详解
建站之星如何快速解决建站难题?
网站制作壁纸教程视频,电脑壁纸网站?
深圳企业网站制作设计,在深圳如何网上全流程注册公司?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
家具网站制作软件,家具厂怎么跑业务?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
如何在IIS中新建站点并配置端口与IP地址?
建站主机选择指南:服务器配置与SEO优化实战技巧
高端智能建站公司优选:品牌定制与SEO优化一站式服务
如何快速生成可下载的建站源码工具?
建站之星后台密码如何安全设置与找回?
常州企业网站制作公司,全国继续教育网怎么登录?
小型网站制作HTML,*游戏网站怎么搭建?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
北京专业网站制作设计师招聘,北京白云观官方网站?
建站中国官网:模板定制+SEO优化+建站流程一站式指南
内部网站制作流程,如何建立公司内部网站?
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
如何零基础在云服务器搭建WordPress站点?
企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?
武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?
电商网站制作公司有哪些,1688网是什么意思?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
实例解析Array和String方法
广德云建站网站建设方案与建站流程优化指南
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
如何在橙子建站中快速调整背景颜色?
高防服务器:AI智能防御DDoS攻击与数据安全保障
如何用PHP快速搭建CMS系统?
*请认真填写需求信息,我们会在24小时内与您取得联系。