今天学习了inlude 和forward两个,还有点晕晕的,总结一下自己所了解的
inlcude和forward 都可以作为页面跳转的的用法
但是include只是镶嵌 用的JSPRuntimeLibrary
<jsp:include page="jspTag.jsp">
<jsp:param name="name" value="if"/>
</jsp:include>
而forward是拿目标页面来完全代替,用的_jspx_page_context
<jsp:forward page="jspTag.jsp">
<jsp:param name="name" value="root"/> <!--页面不会变-->
</jsp:forward>
对于前面的include 是jsp动态,还有include 静态
<@ include page="jspTag.jsp">,他是完全的拿过来镶嵌,可能与源文件有冲突,所以一般都不用这个
对于页面跳转,还有一个是表单的提交,
<form id="login" method="post" action="jspTag.jsp">
<input type="text" name="name">
<input type="submit" value="login"><!--这个变了-->
</form>
表单提交,他是完全的跳转,地址要变,之前的地址不变
增加2017/1/17
对于 jsp:param 他也是一个参数
<jsp:param name="name" value="value">
<jsp:include page="url.jsp">
<jsp:forward page="url.jsp">
增加2017/1/19
request.getRequestDispatcher("/a.jsp").include(request,response); //也有include 的功能
request.getRequestDispatcher("/a.jsp").forward(request,response); //forward 的功能
response.sendRedirect("a.jsp");
response 他是重定向,请求参数会区别丢失