Servlet服务器、客户端跳转
服务期跳转、服务器端转发、服务器端重定向是一个意思
使用“req.getRequestDispatcher(“跳转路径”).forward(req,resp)”实现服务器端转发
客户端发送请求后数据传输过程:
1、客户端发送请求至服务器;
2、服务器将请求分配给对应的控制器(servlet)处理,并在控制器中调用业务层方法获取数据;
3、将获取的数据保存至request内置对象;
4、在跳转页将保存至request内置对象的数据提取并在客户端上显示;
注:上述过程中“.html”文件无法获取保存request内置对象的数据,需要将html文件替换为动态页面“.jsp”
总结:
1、服务器端转发(跳转)的特征
1.实现的方式是调用RequestDispatcher类的forward()方法;
2.服务器端转发(跳转)并不会改变浏览器地址栏;
3.使用服务器端转发后,将在“.jsp”页面中取得保存request内置对象的属性;
2、使用${参数名}在“.jsp”中取得对应的值,该表达式就是EL表达式
客户端转发简介:
实现客户端的转发方式有很多(超链接转发、表单提交以及“JS”中使用的“Windows.location.href”),但是都基于客户端的直接实现。在servlet中实现客户端转发需要使用“sendRedirect("跳转路径")”
注:在服务器端转发可能在服务器端执行多次,但是对于客户端来说只发送了一次请求,但是客户端的转发每次转发都是客户端的一个新请求
总结:
1、客户端转发会改变浏览器的地址栏信息,而不再是表单提交的路径;
2、一次客户端转发过程至少发送两次请求(一次在提交表单时发送,一次在serlvet中调用sendRediect方法时);
3、客户端转发之后保存在request内置对象的数据将不存在(request只能保存本次请求的数据,而跳转请求有两个所以无法保存,可以使用setSession().setattribute()方法替代)
Servlet服务器、客户端跳转的更多相关文章
- Servlet(11)—客户端跳转和服务端跳转
客户端跳转: 1.链接跳转:< a href="">< /a > 2.表单提交< form>< /form> 3.Response. ...
- Web开发中的服务器跳转与客户端跳转
两者比较如下: 跳转类型 客户端请求次数 服务端响应次数 URL变化 站外跳转 作用域 服务器跳转 1 1 无 否 pageContext.request.session.application 客 ...
- Java开发之Servlet之间的跳转
一.转向(Forward) 1.要点说明 转向是通过RequestDispatcher对象的forward()方法来实现的.RequestDispatcher可以通过HttpServletReques ...
- 在jsp中常用的内置对象(5个)小总结和两种页面跳转方式(服务器端调转、客户端跳转)的区别
jsp中常用的几个内置对象: 一.request对象 主要作用: (1)获取请求页面的信息 比如:request.getParameter("参数名"); (2)获取客户端 ...
- Servlet间的跳转
Forward 转向(Forward)是通过RequestDispatcher对象的forward(HTTPServletRequest req, HttpSerletRespon ...
- Jsp与servlet之间页面跳转及参数传递实例(转)
原网址:http://blog.csdn.net/ssy_shandong/article/details/9328985 11. jsp与servlet之间页面跳转及参数传递实例 分类: Java ...
- servlet篇 之 跳转问题
servlet中的跳转: 跳转本质上是对文件传输操作 进行 封装. 例如:客户端访问一个servlet,在servlet中需要把已经写好的页面hello.html返回给客户端浏览器,需要用io来实现这 ...
- JSP中客户端跳转与服务器端跳转的区别
转载自:https://www.cnblogs.com/memewry/archive/2012/08/21/2649988.html 客户端跳转时用HttPservletResopse对象的send ...
- Servlet——提交表单信息,Servlet之间的跳转
HTML表单标签:<form></form> 属性: actoion: 提交到的地址,默认为当前页面 method: 表单提交方式 有get和post两种方式,默认为get ...
- servlet forword服务器端跳转
web.xml中配置servlet的映射和访问路径 <?xml version="1.0" encoding="UTF-8"?><web-ap ...
随机推荐
- Jenkins的详细安装及使用--windows
操作环境:Windows 一.环境准备 1 安装JDK 本文采用jdk-8u111-windows-x64.exe: 2 配置tomcat 本文采用tomcat8,无需安装,配置JAVA_HOME及J ...
- Python学习笔记十
守护进程 p.daemon=True 必须在p.start()之前设置. 守护进程内不能再开子进程. 在主进程中开启守护进程(就是一个子进程) 什么时候应该把子进程设置为守护进程? 开子进程的目的:就 ...
- Python学习笔记八
类的高级用法 多态: 在其他语言,使用的是类的继承. 在python中,不需要指定数据类型. 基于TCP协议的socket通信实现: 类似于打电话的情景. 服务端: 1.买手机 2.插卡 3.开机 ...
- 一分30秒 kali 开机显示 a start job is running for dev-disk 处理
在给kali虚拟机扩容后,使用fdisk /dev/sda 更改新建分区后,重启系统出现一分30秒等待. 解决方案: (root 权限) 第一步:sudo blkid (查看当前系统的真实的 ...
- 关于saltstack
配置Saltstack master 服务器 master服务器:saltstack.master 172.18.1.103 minion客户端:minion01 172. ...
- Java Web项目漏洞:检测到目标URL存在http host头攻击漏洞解决办法
检测到目标URL存在http host头攻击漏洞 详细描述 为了方便的获得网站域名,开发人员一般依赖于HTTP Host header.例如,在php里用_SERVER["HTTP_HOST ...
- python第九天(9-34)
一:队列的三种模式 先进先出(FIFO) class queue.Queue(maxsize) 后进先出(LIFO) class queue.LifoQueue(maxsize) 优先级顺序(优先级低 ...
- 禁用大陆ip段
https://www.ip2location.com/free/visitor-blocker 有 .htaccess web.config等 以iis为例 打开C:\Windows\System3 ...
- JWT( JSON Web Token)
参考 https://laravelacademy.org/post/9469.html 三部分组成,头部.载荷与签名 头部 把下面的基本信息base64 加密生成头部信息 { "typ& ...
- 微信小程序--家庭记账本开发--03
组件.标签以及模板的使用 在一个微信小程序中,需要用到大量的组件,一些页面的设计也需要模板,在自己所学课程中,对于一些组件.标签模板的使用有了初步的了解. 1.组件 组件是数据和方法的简单封装,对于微 ...