文档详情

第六章JSP内置对象.docx

发布:2017-05-27约2.22万字共41页下载文档
文本预览下载声明
【5.5.2jsp:forward】jsp:forward用于将一个JSP的内容传送到page所指定的JSP程序或者servlet去处理。格式:jsp:forwardpage=”URL” flush=”true”/jsp:forwardpage=”URL” flush=”true”jsp:param name=”paramname” value=”paramvalue”//jsp:forward【forward.jsp】htmlheadtitleForward Example/title/head!--最终显示的是forforward.jsp中的内容--bodybgcolor=red Welcome to forward.jsp%--直接跳转到forforward.jsp,这两个jsp用的是同一个request--%jsp:forwardpage=forforward.jsp//body/html【forforward.jsp】htmlheadtitleforforward.jsp/title/headbodybgcolor=blue Welcomebr Here is forforward.jsp/body/html测试,在地址栏输入http://localhost:8080/servlet_example1/forward.jsp,页面显示为注意页面的内容是forforward.jsp的内容,但是地址栏仍然是forward.jsp。用处:登录之后根据登录情况跳转到相应的页面。【练习1】【forward1.jsp】htmlheadtitleForward Example/title/headbodybgcolor=red Welcome to forward1.jspjsp:forwardpage=forforward1.jspjsp:paramname=namevalue=m/jsp:paramname=oldNamevalue=%=request.getParameter(name)% /jsp:paramname=rolesvalue=manager//jsp:forward/body/html【forforward1.jsp】htmlheadtitleforforward1.jsp/title/headbodybgcolor=blue Welcomebr Here is forforward1.jspbr%=request.getParameter(name)%%=request.getParameter(oldName)%%=request.getParameter(roles)%%=request.getParameter(address)%/body/html测试,在地址栏输入:http://localhost:8080/servlet_example1/forward.jsp,显示http://localhost:8080/servlet_example1/forward.jsp?name=zhangsan,显示http://localhost:8080/servlet_example1/forward.jsp?address=jinan,显示jsp:forward发生在服务器端,客户端并不知道已经跳转到别的页面了。但是forward和forforward是同一个request对象。JSP访问第一个页面,第一个页面跳转到第二个页面,第二个页面把内容传递到客户端,但是在客户端的页面上显示的仍然是第一个页面的名字。这两个页面是同一个request对象。【6.3.1 重定向网页】而response.sendRedirect则不同。当你访问第一个页面的时候,页面要求你重新访问另外一个页面,因此客户端浏览器需要访问另外一个页面的地址。因此两个页面使用的是不同的request。测试:新建test.jsp:%response.sendRedirect(forforward.jsp);%访问test.jsp,在地址栏输入http://localhost:8080/servlet_example1/test.jsp,结果地址栏变为http://localhost:8080/servlet_example1/forforward.jsp,页面显示为在地址栏输入:http://localhost:8080/servlet_example1/test.jsp?name=zhangsan,页面显示为表示无法接受参数。思考一下原因。【6.2.1 访问请求参数】request对象代表的是来自客户端的请求,例如在form表单中填写的信息等,是最常用的对象
显示全部
相似文档