动作标识
一、包含文件标识<jsp:include>
1、介绍
用于向当前页面中包含其他文件。被包含的文件可以是动态文件,也可以是静态文件
2、语法格式
<jsp:include page="url" flush="false|true"/>
或
<jsp:include page="url" flush="false|true"/>
子动作标识<jsp:param>
</jsp:include>
参数说明:
page:用于指定包含文件的相对位置
flush:可选属性,用于设置是否刷新缓存区。默认值为false
子动作标识<jsp:param>:用于向被包含的动态文件中传递参数
3、注意
(1)静态文件和动态文件的处理方式
静态文件:页面执行后,在使用了该标识的位置将会输出这个文件的内容
动态文件:JSP编译器会对文件先进行编译,然后识别出是否动态文件。
(2)include指令与<jsp:include>的异同点
相同点:都可以用来包含文件
不同点:
- include指令通过file属性指定被包含的文件,并且file属性不支持任何表达式;
- <jsp:include>动作标识通过page属性指定包含的文件,而且page属性支持JSP表达式
- include指令会将被包含的文件内容会原封不动地插入到包含页中,然后JSP编译再将合成后的文件最终编译成一个Java文件;
- <isp:include>动作标识包含文件时,当该标识被执行时,程序会将请求转发(注意是转发,而不是请求重定向)到被包含的页面,并将执行结果输出到浏览器中,然后返回包含页,继续执行后面的代码。因为服务器执行的是多个文件,所以JSP编译器会分别对这些文件进行编译。
- 在应用include指令包含文件时,由于被包含的文件最终会生成一个文件,所以在被包含文件、包含文件中不能有重名的变量或方法;
- 在应用<sp:include>动作标识包含文件时,由于每个文件是单独编译的,所以在被包含文件和包含文件中重名的变量和方法是不相冲突的。
二、请求转发标识<jsp:forward>【跳转页面】
1、介绍
通过sjsp:forward动作标识可以将请求转发到其他的Web资源,即执行请求转发后,当前页面将不再被执行,而是去执行该标识指定的目标页面
2、语法格式
<jsp:forward page="url"/>
或
<jsp:forward page="url">
子动作标识<jsp:param>
</jsp:forward>
参数说明:
page:用于指定请求转发的目标页面
子动作标识<jsp:param>:用于向目标文件中传递参数
三、传递参数标识<jsp:param>
1、介绍
用于为其他标识传递参数
2、语法格式
<jsp:param name="参数名" value="参数值"/>
参数说明:
name:指定的参数名称
value:用于设置对应的参数值