JSP页面包含其他页面的三种方式及区别
2016-12-22 09:46
465 查看
<%@ include file="header.inc"%>该指令在编译之前先读入指定的页面中的内容(并不对动态内容求值),融合后的完整页面再被整体的转换为一个servlet。这意味着主页和被引入的页面共享所有的页面作用域数据。 因此,如果主页面中声明了一个变量,而在某个被引入的页面中也声明了一个同名的变量,那么在翻译阶段将会造成一个错误,因为组合后的页面无法进行编译。 被引用页面改变后,容器可能不会马上产生反应。 JSP规范建议在使用include指令引入JSP页面时,最好使用不同的文件扩展名,因为它们一般都不是完整而合法的页面,如:可以使用这些替代的文件扩展名:.jspf或 .jsf。 执行时机:在翻译阶段(将JSP页面转换成servlet的阶段) <jsp:include page="header.jsp"/>该行为并不是要引入指定页面的实际内容,它将引入执行该引入页面后所产生的应答这意味着你可以指定任何能够产生文本应答的web资源。JSP容器将通过一个内部的函数调用来调用指定的资源。因此,这些被引入的资源可以帮助处理原来的请求,所以这些资源可以访问请求作用域内的所有对象,以及所有的请求参数。 注意,它不能访问任何页面作用域属性,或是在主页面中声明的脚本变量。 执行时机:在请求处理阶段。 <c:import url="header.jsp"/><c:import>行为和<jsp:include>相同;另外它还可以从外部资源引入数据,比如不同的web应用程序; 另外它还可以在被引用页面改变后,容器立刻能产生反应; 所以应该使用<c:import>来代替<jsp:include>的使用。 执行时机:在请求处理阶段。 |
相关文章推荐
- Math.random()函数生成n到m间的随机数字
- JS实现物体带缓冲的间歇运动效果示例
- JS实现的简单轮播图运动效果示例
- js 把函数作为参数传递给另一个方法
- 详解js的事件代理(委托)
- JSTL标签
- js中的this
- js栏目根据地址栏修改背景添加class
- javascript判断变量是否为空的方法
- JS 导出图片,toDataURL
- JavaScript数组删除重复项
- JS实现间歇滚动的运动效果实例
- javascript-解决mongoose数据查询的异步操作
- java调用javascript文件方法
- JavaScript重载函数的实现【重构优化版】
- 可以借鉴的js写法
- 5.6 JS中基本包装类型
- 学会封装自己的class类:
- 选项卡
- js便签笔记(7)——style、currentStyle、getComputedStyle区别介绍【转载】