1.对于re的跳转,依旧会执行完剩下的代码才会跳转
为了让其马上执行,可以在re后加上return
不能通过这种跳转方式来传中文参数,如:
re("03.jsp?username=aaa"); 可以
re("03.jsp?username=张三"); 不可以
2.<jsp:forword page="03.jsp">
<jsp:param name="aaa" value="username">
</jsp:forword>
传中文的时候会乱码
最佳实践:跳转的时候尽量不要传中文
3.相对路径指的是针对当前页面的路径 如: ../image
4.绝对路径指的是基于根目录进行访问一般都是使用/开头
最佳实践
在开发中一般都是使用绝对路径来访问地址(在tomcat中,绝对路径会指向网站的根目录,这个根目录指的是tomcat发布web应用的目录,很多时候网站在开发过程中都有一个上下文的路径[开发过程中的project的名字],此时如果要通过绝对路径访问需要加上上下文路径,为了不将上下文路径硬编码,可以通过reque()来获取上下文路径)
5.静态包含指的是,导入的文件会先被编译成html文件才进行导入
<%@ include file="要包含的页面路径" %>
6.动态包含:不进行任何的编译,直接将要导入的文件原样导入,然后在被导入的页面中进行编译
<jsp:include page="要包含的页面路径" />
最佳实践:90%的情况都是静态包含,因为使用动态包含有可能会出现变量的重名定义
在使用包含时,如果使用的时绝对路径,不用加上上下文,会默认加上
7.如果希望在不同的页面中传递对象,可以通过xx.setAttribute("xx",sss)完成设置,可以通过xx.getAttribute("xx")来获取对象
可以传递对象的几个内置对象有如下一些
·pageContext(对于servlet而言没有)
当前页面存在,当发生跳转之后数据丢失
·request(HttpRequestServlet)
当前页面存在,服务器端跳转存在,客户端跳转不存在
·session(HttpSession)
只有浏览器关闭,session才丢失,否则一直都存在
·application(ServletContext)
只要服务器没有重启就存在
使用原则:能用pageContext就不用request,能用request就不用session,能用session就不用application