java Web中页面跳转方式之请求转发
1、在一个请求中跨越多个Servlet
2、多个Servlet在一个请求中,他们共享request对象。就是在Servlet01中setAttribute()保存数据在Servlet02中由getAttribute()取出数据
3、在Servlet01转发到Servlet02,那么整个请求都是由Servlet02来完成,Servlet01不再插手
4、Servlet01 包含Servlet02,那么两个Servlet共同完成请求
5、请求转发和请求包含都需要使用一个对象RequestDispatcher。
Servlet01:
public class DemoServlet01 extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//从数据库获取数据
UserService service = new UserService();
List<User> userList = service.getUserList();
//把数据放到request对象中
request.setAttribute("userList", userList);
//获取重定向对象
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/DemoServlet03");
//重定向对象执行操作
requestDispatcher.forward(request, response);
}
}
Servlet02:
public class DemoServlet02 extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//从request中取出数据
List<User> list = (List<User>) request.getAttribute("userList");
//响应到请求的客户端
response.setContentType("text/html;charset=utf-8");
for (User user : list) {
response.getWriter().print(user);
}
}
}
附图一张:

html页面跳转: <a href="http://www.baidu.comd">百度</a>
js页面跳转: window.open(url); location.href=url
java Web中页面跳转方式之请求转发的更多相关文章
- java Web中页面跳转方式之重定向和请求转发的区别
请求转发: request.getRequestDispatcher().forward(); 重定向: response.sendRedirect(); 例如: 请求转发: request.getR ...
- Java Web中解决乱码的方式
Java Web中解决乱码的方式 方式一:添加编码过滤器 package com.itmacy.dev.filter; import javax.servlet.*; import javax.ser ...
- Strus默认跳转方式是请求转发 地址栏不变 与javaweb的内部转发一样
Strus默认跳转方式是请求转发 地址栏不变 与javaweb的内部转发一样
- java web 中 页面/业务重定向
情形一:地址栏简洁明了(列表页面需要局部查询,分页) 页面初始化:library方法,没有任何过滤条件,显示第一页: 页面刷新:library方法,page依旧保留,在地址栏中显示,但局部查询条件会 ...
- SpringMVC 04: SpringMVC中4种页面跳转方式
转发和重定向的页面跳转方式 页面跳转方式,本质上只有2种方式:转发 + 重定向 但在SpringMVC的具体实现上,转发可以细分为:普通的页面转发 + 经由action方法的页面转发 重定向可以细分为 ...
- Java web中常见编码乱码问题(一)
最近在看Java web中中文编码问题,特此记录下. 本文将会介绍常见编码方式和Java web中遇到中文乱码问题的常见解决方法: 一.常见编码方式: 1.ASCII 码 众所周知,这是最简单的编码. ...
- 深入分析Java Web中的编码问题
编码问题一直困扰着我,每次遇到乱码或者编码问题,网上一查,问题解决了,但是实际的原理并没有搞懂,每次遇到,都是什么头疼. 决定彻彻底底的一次性解决编码问题. 1.为什么要编码 计算机的基本单元是字节, ...
- Java Web 中使用ffmpeg实现视频转码、视频截图
Java Web 中使用ffmpeg实现视频转码.视频截图 转载自:[ http://www.cnblogs.com/dennisit/archive/2013/02/16/2913287.html ...
- java web中servlet、jsp、html 互相访问的路径问题
java web中servlet.jsp.html 互相访问的路径问题 在java web种经常出现 404找不到网页的错误,究其原因,一般是访问的路径不对. java web中的路径使用按我的分法可 ...
随机推荐
- TF随笔-3
>>> import tensorflow as tf>>> node1 = tf.constant(3.0, dtype=tf.float32)>>& ...
- POJ 2954 Triangle (pick 定理)
题目大意:给出三个点的坐标,问在这三个点坐标里面的整数坐标点有多少个(不包含边上的) 匹克定理:I = (A-E) / 2 + 1; A: 表示多边形面积 I : 表示多边形内部的点的个数 E: 表示 ...
- php 中 用curl 发送 https 请求
在 php.ini 中修改配置选项 curl.cainfo = "D:\phpStudy\php\php-5.6.27-nts\pert\cacert.pem" 其中 cacert ...
- HihoCoder - 1615矩阵游戏II(贪心)
矩阵游戏II 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个NxN的整数矩阵,小Hi每次操作可以选择两列,将这两列中的所有数变成它的相反数. 小Hi可以进行任意 ...
- Spring源码学习之:ClassLoader学习(5)-自测
[一]测试目的(ClassLoader的作用) 1:测试涉及三个jar包,nonbankcard-configure-0.0.1-SNAPSHOT.jar,nonbankcard-persist-0. ...
- npm包的发布
假设该待发布包在你本地的项目为 project1 包的本地安装测试 在发布之前往往希望在本地进行安装测试.那么需要一个其他的项目来本地安装待发布项目. 假设该其他项目为project2.假设proje ...
- nginx 限制
在nginx.conf里的http{}里添加: http{ limit_conn_zone $binary_remote_addr zone=perip:10m; limit_conn_zone $s ...
- mysql5.7不支持0000-00-00 00:00:00的默认时间设置
方案一: 数据不多的话把原有的5.53的数据改一下符合要求(数据库时间字段里千万不能出现0000-00-00 00:00:00这样的值),然后导出.sql文件,导出的.sql文件里把 DEFAULT ...
- 今天去python官网下载包安装的时候的问题记录
去官网下载了 tar压缩包 放到了site-packages下解压 然后使用 python setup.py install 安装 安装完后,所要引用的模块文件居然还在解压出来的压缩文件里面,导致无法 ...
- java中绘图-----那个鼠标等的监听我还是不太会,,好苦恼啊。不知道这些监听事件是怎么区分的
总结::监听到底该怎么用 事件的区分是靠判断还是 package com.a.b; //我想实现,当我点击一个按钮时,这个frame里可以画出实心的矩形 import java.awt.Color; ...