常用JSP动作标识:
动作标识和指令标识的区别:动作是特殊的标记,通过一个动作标记可以实现多行Java代码实现的效果。可以动态插入文件、重用JavaBean组件、导向另一个页面等,而且动作标识是在客户端向服务端发出请求时动态执行,每次客户端有请求都会动态执行一次,而指令标识只在编译时执行,而且只编译一次,而且动作标识是基于XML语法实现。
基本格式: <标识名 属性1="值1" ……/>
或: <子标识名 属性1=”值1“ ……>
<子标识名 属性1="值1"……/>
<子标识名 属性1="值1"……/>
</标识名>
1、动作标识<jsp:include>
该动作标识用于包含其它页面,被包含的页面可以是动态的也可以是静态的
基本格式:
<jsp:include page="url" flush="false|true" />
或<jsp:include page="url" flush"false|true" >
子动作标识<jsp:param>
<jsp:include>
page:指定被包含文件的相对路径
flush:设置是否刷新缓冲区,默认为false
jsp:include和include区别:include指令通过file属性包含文件,但该熟悉不支持JSP表达式
而jsp:include支持JSP表达式
2、请求转发的动作标识<jsp:forward>
该动作标识用于将当前请求转发到其他Web资源(HTML页面、JSP页面和Servlet等)
<jsp:forward page="url" />
或<jsp:forward page="url" f >
子动作标识<jsp:param>
<jsp:forward>
page属性指定指定转发的目标页面,该属性值可以是一个指定文件路径的字符串或者是JSP表达式
使用该属性的时候,被请求的页面必须与当前JSP页面处于同一上下文应用环境中,否则会出现页面
找不到的错误
3、子动作标识<jsp:param>
基本格式:<jsp:param name="参数名" value="参数值" />
<jsp:forward page="update.jsp">
<jsp:param name="UserId" value="1"/>
</jsp:forward>
上面的代码实现了请求转发到update.jsp页面的同时传递参数UserId,值为1
4、动作标识useBean
该动作标识可以在JSP页面创建一个Bean实例,并且可以通过熟悉设置将该实例保存在JSP中的指定范围,如果指定范围内已经存在该实例,那么就直接使用,而不会创建。
<jsp:useBean
id="变量名"
scope="page|rrequest|session|application"
{
class="package.className"|
type="数据类型"|
class="package.className" type="数据类型"|
beanName="package.className" type="数据类型”
}/>
<jsp:setProperty name="变量名" property="*"/>
id:定义一个变量名,程序中将使用该变量引用所创建的Bean实例
type:指定id属性所定义变量的类型
scope:定义Bean实例的范围,默认为page
class:指定一个完整的类名,与beanName属性不能同时存在,若未设置type属性,则必须设置class属性
beanName:指定一个完整的类名,与class属性不能同行存在,设置该属性时必须设置type属性,其属性值
可以是一个表示完整类名的表达式