java-servlet-转发AND路径(详解)
1.转发:
a) 什么是转发?
一个web组件将未完成的任务交给另一个web组件继续做.
通常是一个servlet将数据获取之后转交给jsp进行展现.
注:web组件值得是servlet或者jsp
b) 如何转发?
1.将数据绑定到request对象上.
request.setatteribute(string name,obj)
注:name绑定名 obj:绑定值
obj request.getattr…(string name);//依据绑定名获取绑定值.
2.获取转发器
requestdispatatcher rd = request.getrequestdispatcher(string url);
注:转发的目的地,比如一个jsp
3.转发
rd.forward(request,response)
注:转发的本质是一个web组件通知容器调用另外一个web组件,(即调用service方法,所以需要传递request,response)
c) 特点:
1.转发的目的地有限制(要求同一个web应用中的某个地址)
2.转发之后,浏览器地址不变.
d) 比较重定向和转发:
1.转发所涉及的各个web组件可以共享request和response.重定向不可以.
注:request和response的生存时间并不长(当服务器收到请求后会立即创建这两个对象,当响应发送完毕,会立即销毁这两个对象)即这两个对象的生存时间为一次请求与响应期间存在.
2.转发之后浏览器地址栏地址不变(要求同一个web应用中的某个地址),重定向没有任何限制且地址会改变.
3.路径问题:
a) 什么是路径问题?
链接,表单提交,重定向和转发都需要填写一个路径,比如
<from action=”add.do”>如何填写这个路径/
b) 相对路径
1.什么是相对路径?
不以”/”开头的路径.
c) 绝对路径
1.什么是相对路径?
以”/”开头的路径.
2.如何写绝对路径?
链接,表单提交,重定向冲应用名开始写,转发从应用名开始写.
z注:不要直接将应用名写在路径里面,应该使用request.getcontextpath()获取应用名.
以上这篇java-servlet-转发AND路径(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
servlet之web路径问题_动力节点Java学院整理
首先,在web开发中,注意这里特别强调是在web开发中,也就是我们用Servlet来处理web应用的过程中: 地址最好以"/"开头!!! 以"/"开头在不同的对象或方法.标签中代表不同的相对根目录.区别在于编程者要注意这个地址是给服务器端使用的,还是给客户端浏览器使用的. 如果是给服务器端使用的地址,"/"代表当前web工程: 如果是给客户端浏览器使用的地址,"/"代表服务器中的主机,或者表示服务器部署web应用的根目录(如T
-
Java,JSP,Servlet获取当前工程路径(绝对路径)问题解析
在jsp和class文件中调用的相对路径不同. 在jsp里,根目录是WebRoot 在class文件中,根目录是WebRoot/WEB-INF/classes 当然你也可以用System.getProperty("user.dir")获取你工程的绝对路径. 另:在Jsp,Servlet,Java中详细获得路径的方法! 1.jsp中取得路径: 以工程名为TEST为例: (1)得到包含工程名的当前页面全路径:request.getRequestURI() 结果:/TEST/test.jsp
-
深入分析java文件路径的详解
Java中使用的路径,分为两种:绝对路径和相对路径.归根结底,Java本质上只能使用绝对路径来寻找资源.所有的相对路径寻找资源的方法,都不过是一些便利方法.不过是API在底层帮助我们构建了绝对路径,从而找到资源的!在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径.如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletCon
-
基于java servlet过滤器和监听器(详解)
1 过滤器 1.过滤器是什么? servlet规范当中定义的一种特殊的组件,用于拦截容器的调用. 注:容器收到请求之后,如果有过滤器,会先调用过滤器,然后在调用servlet. 2.如何写一个过滤器? 1.写一个java类,实现Filter接口; 2.在接口方法中实现拦截方法; 3.配置过滤器(web.xml); 3.配置初始化参数 1.配置初始化参数.(init-param) 2.通过filterconfig提供的getinitparamenter方法读取初始化的值. 4.优先级: 当有多个过
-
Java Servlet响应httpServletResponse过程详解
目录 一.核心方法 1.setStatus 2.setHeader(Stringname,Stringvalue) 3.addHeader(Stringname,Stringvalue) 4.setContentType(Stringtype) 二.响应一个网页 三.返回一个文件 四.返回json数据 一.核心方法 1.setStatus 设置响应状态码 如果没有调用这个方法,默认返回200状态码(前提:正常执行,没有异常) 如果出现异常,返回500 前端代码: <body> <h3&g
-
servlet转发、包含详解(七)
本文为大家介绍了servlet转发.servlet包含,供大家参考,具体内容如下 1.什么是servlet转发? servlet将用户的请求通过一组servlet来处理,每个servlet都有自己特定的职责,当该servlet完成自己的工作后将请求转发到下一个servlet来处理,这种通过不同servelet相互转发请求来完成对某个请求的处理过程就叫做servlet转发. 2.什么是servlet包含? servlet包含就是源servlet将其他web组件(servlet,html,jsp),
-
Java中Servlet的生命周期详解
目录 Web基础和HTTP协议 什么是Servlet Servlet的生命周期 Web基础和HTTP协议 ┌─────────┐ ┌─────────┐ │░░░░░░░░░│ │O ░░░░░░░│ ├─────────┤ ├─────────┤ │░░░░░░░░░│ │ │ ├─────────┤ │ │ │░░░░░░░░░│ └─────────┘ └─────────┘ │ request 1 │ │─────────────────────>│ │ request 2 │ │───
-
java仿Servlet生成验证码实例详解
java仿Servlet生成验证码实例详解 实现原理:使用BufferedImage对象的Graphics来进行绘制,然后输出成一张图片进行保存 实现代码及详解: public class validateCode{ private static Random rand = new Random(); public static void main(String[] args){ int val1 = rand.nextInt(9); int val2 = rand.nextInt(9); in
-
Java WebService开源框架CXF详解
目录 CXF简介 支持多种标准 CXF入门案例 服务端的实现 客户端的实现 CXF+Spring整合发布SOAP模式的服务 服务端的实现 客户端的实现 CXF发布REST模式的服务 CXF+Spring整合发布REST模式的服务 综合案例:手机归属地查询 CXF简介 CXF是一个开源的WebService框架.Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF.CXF 继承了 Celtix
-
java-servlet-转发AND路径(详解)
1.转发: a) 什么是转发? 一个web组件将未完成的任务交给另一个web组件继续做. 通常是一个servlet将数据获取之后转交给jsp进行展现. 注:web组件值得是servlet或者jsp b) 如何转发? 1.将数据绑定到request对象上. request.setatteribute(string name,obj) 注:name绑定名 obj:绑定值 obj request.getattr-(string name);//依据绑定名获取绑定值. 2.获取转发器 requestdi
-
Java Springboot websocket使用案例详解
什么是WebSocket WebSocket是一种在单个TCP连接上进行全双工通信的协议 - 为什么要实现握手监控管理 如果说,连接随意创建,不管的话,会存在错误,broken pipe 表面看单纯报错,并没什么功能缺陷等,但实际,请求数增加,容易导致系统奔溃.这边画重点. 出现原因有很多种,目前我这边出现的原因,是因为客户端已关闭连接,服务端还持续推送导致. 如何使用 下面将使用springboot集成的webSocket 导入Maven 首先SpringBoot版本 <parent> &l
-
Java打包工具jar包详解
Java打包工具是Java开发工具中比较常用的一种,代码重新打包工具jarjar可以帮助你将其它用到的java库打包并嵌入到你自己的项目jar包中.这样做的原因有: 当你发布项目的时候,把用到的库打包进现有项目jar包,可以让发布的这个jar包不比依赖于其它项目的jar包; 当你所用到的java库升级了以后,它所新发布的jar包可能和你现存的项目不匹配,为了保持项目的代码稳定性,你可以把编写代码时所用到的依赖jar包,全部打包进现在的项目jar包,以避免出现这个问题. jarjar可以通过Ant
-
Java WebService开源框架CXF详解
CXF简介 CXF是一个开源的WebService框架.Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF.CXF 继承了 Celtix 和 XFire 两大开源项目的精华,提供了对 JAX-WS 全面的支持,并且提供了多种 Binding .DataBinding.Transport 以及各种 Format 的支持,并且可以根据实际项目的需要,采用代码优先(Code First)或者 WS
随机推荐
- [JAVA]十四种Java开发工具点评
- javascript 检测浏览器类型和版本的代码
- Linux脚本自动输入密码
- wowexec.exe比较简单的查杀办法(毒霸就是wowexec.exe专杀工具)
- Android中实现监听ScrollView滑动事件
- java N皇后实现问题解析
- Oracle 获得以百分号结尾的脚本有三种写法
- ThinkPHP安装和设置
- PHP模拟登陆163邮箱发邮件及获取通讯录列表的方法
- 微信公众平台开发(五) 天气预报功能开发
- js正则表达式匹配数字字母下划线等
- 基于Javascript实现弹出页面效果
- 初探Delphi中的插件编程
- java中重写equals和重写hashCode()
- Android手机获取Mac地址的方法
- JS的千分位算法实现思路
- Redis实现多人多聊天室功能
- 详解C语言中结构体的自引用和相互引用
- 微信小程序网络请求wx.request详解及实例
- 在Java的JDBC使用中设置事务回滚的保存点的方法