只要搞清楚“/”代表的是什么就行了:
(1).在form,js,css,sendRedirect里边,代表的是http://127.0.0.1/;
(2).在web.xml中的url-pattern,forword代表的是 http://127.0.0.1/myweb。myweb是项目名
1. 跳转方式
http://localhost:8080/Test应用
运用forward方法只能重定向到同一个Web应用程序中的一个资源。而sendRedirect方法可以让你重定向到任何URL。
表单form的action= "/uu ";sendRedirect( "/uu ");表示相对于服务器根路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/uu);
Forward代码中的 "/uu "则代表相对与WEB应用的路径。如http://localhost:8080/Test应用(则提交至http://localhost:8080/Test/uu);
2. (运用RequestDispatcher接口的Forward)方法
forward()无法重定向至有frame的jsp文件,可以重定向至有frame的html文件,
同时forward()无法在后面带参数传递,比如servlet?name=frank,这样不行,可以程序内通过response.setAttribute( "name ",name)来传至下一个页面.
转发后浏览器地址栏URL不变.
只有在客户端没有输出时才可以调用forward方法。如果当前页面的缓冲区(buffer)不是空的,那么你在调用forward方法前必须先清空缓冲区。
"/ "代表相对与web应用路径
RequestDispatcher rd = request.getRequestDispatcher( "/ooo ");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd = getServletContext().getRequestDispatcher( "/ooo ");
rd.forward(request, response);提交至http://localhost:8080/Test/ooo
RequestDispatcher rd =getServletContext().getNamedDispatcher( "TestServlet ");(TestServlet为一个 <servlet-name> )
rd.forward(request, response);提交至名为TestServlet的servlet
如果在 <jsp:forward> 之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意。
另外要注意:它不能改变浏览器地址,刷新的话会导致重复提交
从http://localhost:8080/Test/gw/page.jsp中转发
<jsp:forward page= "OtherPage.jsp "/> 在JSP页面被解析后转换成pageContext.forward( "OtherPage.jsp ");
"/OtherPage.jsp "提交到http://localhost:8080/Test/OtherPage.jsp
"OtherPage.jsp "提交到http://localhost:8080/Test/gw/OtherPage.jsp
(运用HttpServletResponse接口的sendRedirect)方法302
是在用户的浏览器端工作,sendRedirect()可以带参数传递,比如servlet?name=frank传至下个页面,
同时它可以重定向至不同的主机上,sendRedirect()可以重定向有frame.的jsp文件.
假设转发代码包含于注册的servlet-url为/ggg/tt;jsp为/ggg/tt.jsp:
绝对路径:response.sendRedirect( "http://www.brainysoftware.com ")发送至http://www.brainysoftware.com
根路径:response.sendRedirect( "/ooo ")发送至http://localhost:8080/ooo
相对路径:response.sendRedirect( "ooo ")发送至http://localhost:8080/Test/ggg/ooo,
sendRedirect等同于此方式
response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY);
String newLocn = "/newpath/jsa.jsp ";
response.setHeader( "Location ",newLocn);
(Meta Refresh)方法200
这种方法是由HTML提供的,Meta本身就是HTML标签。使用方法是: <meta http-equiv= "refresh " content= "5; url=http://www.dreamdu.com/ " />
相应的java代码
String content=stayTime+ ";URL= "+URL;
response.setHeader( "REFRESH ",content);
3. 使用response.sendRedirect()地址栏将改变
使用request.getRequestDispatcher().forward(request,response)地址栏中的信息保持不变
4. request.setAttribute存的东西
只用通过方法2跳转 才能在新页取出来
5. redirect 会首先发一个response给浏览器, 然后浏览器收到这个response后再发一个requeset给服务器, 然后服务器发新的response给浏览器. 这时页面收到的request是一个新从浏览器发来的.
forward 发生在服务器内部, 在浏览器完全不知情的情况下发给了浏览器另外一个页面的response. 这时页面收到的request不是从浏览器直接发来了,可能己经放了数据.
所以: request.setAttribute存的东西 只用通过方法2跳转 才能在新页取出来
相关推荐
一、音标是什么 简要介绍音标,并展示音标图 二、本课目标:前元音/i:/ /ɪ/ /e/ /æ/; 三、音标精讲 (一)、/i:/ 代表单词:sheep [ʃi:p] 【嘴巴微微张开,呈扁平口型】 Ice cream /aɪs kri:m/ Key /ki:/ ...
给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。 J 中的字母不重复,J 和 S中的所有字符都是字母。...
销售经理/销售代表个人简历表格模板.doc
//代表 包名.类名 String FieldNames=pro.getProperty("FieldName"); //代表 属性 姓名 String FieldValues=pro.getProperty("FieldValue");//代表 属性 姓名 值 String SetFieldValues=pro.getProperty(...
Wireshark捕获得到的数据包,不同颜色代表的不同含义
丰富的资源会促进细菌的生长,特别是富营养型细菌的生长。快速的生长需要大量的核糖体,富营养性细菌会持有更多的核糖体RNA操纵子(number of ribosomal RNA operons, rrn)。我们可以根据核糖体RNA操纵子的数目来对...
只要您使用该项目或其部分,即代表您默认同意本声明且不用于商业用途 5. 若您正在使用该项目或其部分发布商业版或用于盈利目的,请您尊重我们的声明, 立即删除与我们相关的代码或程序,并做好善后处理 ////////...
只要您使用该项目或其部分,即代表您默认同意本声明且不用于商业用途 5. 若您正在使用该项目或其部分发布商业版或用于盈利目的,请您尊重我们的声明, 立即删除与我们相关的代码或程序,并做好善后处理 //////...
O/X 映射器这个概念并不新鲜,O 代表 Object,X 代表 XML。它的目的是在 Java 对象(几乎总是一个 plain old Java object,或简写为 POJO)和 XML 文档之间来回转换。 例如,您可能有一个带有几个属性的简单 bean,...
销售代表/推销员求职简历表.doc
cat /etc/passwd 查看linux用户 cat /etc/shadow 查看用户密码需要root权限 cat /etc/sysconfig/network-scripts/ifcfg-ethn N代表网卡号 查看所在网卡的ip信息 ifconfig 查看本机ip信息
ZF13000/25/38型放顶煤液压支架在使用过程中部分功能不能完全满足实际情况需求,故对液压系统、顶梁、掩护梁四连杆销轴定位板、尾梁千斤顶、滑道及推移框架、配套过渡支架护帮板作了一系列技术改造设计。
因此我们认为,基于VR/AR的实景交互代表着通信产业新的发展方向。当前时点,5G的成熟为克服3D内容实时传输问题,以及因延迟造成的眩晕问题构建了网络环境,而相应光学元件、显示方案、专用芯片的推出则为终端的兴起...
只要您使用该项目或其部分,即代表您默认同意本声明且不用于商业用途 5. 若您正在使用该项目或其部分发布商业版或用于盈利目的,请您尊重我们的声明, 立即删除与我们相关的代码或程序,并做好善后处理 ////////...
潞安机械公司在ZZ9000/23/48型液压支架柱窝铸件实际生产过程中,由于传统工艺的局限,柱窝铸件冒口处无法得到有效补缩,导致柱窝在切割冒口后发现十字结构热节处存在严重的缩孔缺陷,直接导致铸件报废,无法使用。...
只要您使用该项目或其部分,即代表您默认同意本声明且不用于商业用途 5. 若您正在使用该项目或其部分发布商业版或用于盈利目的,请您尊重我们的声明, 立即删除与我们相关的代码或程序,并做好善后处理 ////////...
/var/spool/cron/ cron Cron服务 cron是Linux系统下一个自动执行指定任务的程序. cron服务要通过命令启动...Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法
24C02/04/08/16/32/64 PROM256/512/1024/2048/4096/8192×8-bit1.8V 1μA1mA 24C02/04/08/16/32/648/16/16/16/32/32 24C02/04/08/16/32/64 8-pin PDIP8-pin SOP
17.4. 只要您使用该项目或其部分,即代表您默认同意本声明且不用于商业用途 18.5. 若您正在使用该项目或其部分发布商业版或用于盈利目的,请您尊重我们的声明, 19.立即删除与我们相关的代码或程序,并做好善后...
1.全国行政区域代码代码,更新维护至2021-12-30 2.包括省份(直辖市)、城市、区县、乡镇四级的行政区划代码 ...4.城乡划分代码说明:mysql数据库,树结构存储。包括:编码;名称;全称;所属省,市,区县,街道;...