JSP常用动作标签知识回顾

来源:互联网 发布:网站源码音乐连接 编辑:程序博客网 时间:2024/05/18 10:52

基本的JSP动作标签如下:



JSP动作标签之forward


<jsp:forward>标签只有一个属性page:
<jsp:forward page="/index.jsp" /><jsp:forward page="<%= someExpression %>" />
注意这里为什么叫做动作标签?所以在动作结束的时候,用“/“结尾
从上面的例子中可知,page的值既可以直接给出,也可以在请求的时候动态计算。

JSP动作标签之include


语法如下:
<jsp:include page="relativeURI" flush="true" />
有两个属性page和flush,flush为true时,缓存区满后会被清空,反正我是没做过这个...

这里的include动作是动态插入,区别于include编译指令的静态插入,两者的区别主要是以下两方面:
1.include动作在包含页面后,编译结果是两个class文件,所以有一个jsp文件被更改的时候,只需要重新编译该文件就可以了。而inlucde编译指令,包含文件和被包含文件是被编译成一个class文件的,所以一个文件的改变,会造成整体的重新编译。
2.include动作标签,允许page属性的内容是动态的,即如上面的forward中的属性page一样,可以支持表达式,而include编译指令page属性指向的就是一个实际存在的文件路径,所以不支持任何表达式。
深入学习两者区别,建议看这个连接
http://qingfeng825.iteye.com/blog/231873

JSP动作标签之操作JavaBean

涉及的3个标签:
<jsp:useBean id="name" class="package.class"><jsp:setProperty name="id of useBean" property="someProperty" value="value" /><jsp:getProperty name ="id of useBean" property="someProperty">
注意这里的,useBean实例化一个Bean对象,声明这个对象一个对应的ID,然后在set/getProperty方法的时候,name属性的内容,就是useBeanID属性的内容。
示例代码如下:
<html> <head><title>Bean动作标签</title> </head> <body><jsp:useBean id="test" class="action.TestBean"><jsp:setProperty name="test" property="message" value="hello  jsp ..." /><jsp:getProperty name ="test" property="message"> </body></html>
TestBean代码如下:
package action; public class TestBean {   private String message = "No message specified";    public String getMessage() {      return(message);   }   public void setMessage(String message) {      this.message = message;   }}
jsp:useBean属性中 只有ID这个属性,而没有name属性,在setProperty的时候 name属性中的内容要和useBean中的ID属性一致,我也不清楚为什么这里useBean非得要把属性命名为ID,而不是name。

而在很多时候,HTML、css、jsp中ID NAME两个属性是同时存在的,具体的区别和联系,可以看大神阳光岛主的这篇博客,很详细
http://blog.csdn.net/ithomer/article/details/8080912

0 0
原创粉丝点击