JSP动作通常是在向JSP页面发送请求时才会执行的操作,也就是说它是在页面请求期间执行的,这也是JSP动作与JSP行为的本质区别。
一、jsp:include 动作
<jsp:include page = "被包含文件路径" />(page属性是必选属性)
或
<jsp:include page = "被包含文件路径" > (路径,以当前Web应用(站点)所在的目录为根目录形成的路径)
<jsp:param name = "参数名" value="参数值" />
/jsp:include>
(子标签jsp:param可以通过属性name与value向被包含的文件传递参数,它提高了被包含文件的功能与能力。可以有多个jsp:param标签)
include指令与jsp:include动作区别:
include指令——在编译期间执行的操作
jsp:include动作——在JSP页面被请求时才会执行的操作
(好处:使用jsp:include动作时回避使用include命令被包含文件更新时主页面可能不更新的问题,进而降低系统维护的难度)
include指令——将被包含文件的内容包含到当前JSP页面中一并进行编译
(代码合二为一为一个类,影响主JSP页面,效率比jsp:include动作稍快一点)
jsp:include动作——将被包含文件的输出包含到当前JSP页面的输出之中
(两个独立的类,不影响主JSP页面)
include指令——不能向被包含的页面传递参数
jsp:include动作——可以向被包含的页面传递参数
(在被包含页面可以利用request.getParameter方法取得主页面传递的参数值)
二、jsp:forward 动作(转发后页面地址不变)用法与jsp:include动作类似
jsp:forward动作的作用是转发请求,它用于将一个用户请求转发到其他页面,如果用户请求中包含有提交的数据,则这些数据也会被一同转发到目标页面,目标页面也可以对它进行处理。
语法格式:
<jsp:forward page = "转发目标页面" />
或
<jsp:forward page = '转发目标页面" >
<jsp:param name = "参数名" value = “参数值” />
</jsp:forward>
三、jsp:plugin 动作
HTML借助于CSS及JavaScript 可以展现出绚丽多彩的页面效果,也可能实现轻巧灵动的动态特效。但是,对于要展现一些复杂的效果,或者需要动态取得数据并展示效果时,通常就需要借助其他更强大的技术。
对于JSP页面而言,可以通过在网页中嵌入applet或JavaBean,它是通过jsp:plugin 动作实现这个目的的。
语法格式:
<jsp:plugin code = "插件实现顶级类文件" codebase = "插件类根目录"
type = "插件类型" width = "宽度值" height = "高度值" >
<jsp:fallback> 替换文字 </jsp:fallback>
</jsp:plugin>
属性code: 指明插件启动的类名
属性codebase: 用于告诉浏览器以哪里为起点去下载插件的class文件
属性type:用于指明插件的类型,它可以是applet或bean,其中以applet较为常见
子标签jsp:plugin: 用于在浏览器不支持插件时在插件应显示的位置显示一段替代文字