JSP声明
转:http://wwyinhuabin.blog.163.com/blog/static/38203212201022975818245/
2.3 JSP 声明
JSP 声明用于声明变量和方法。在JSP 声明中声明方法看起来很特别,似乎没有类,只有方法定义,而方法又脱离类独立存在。
JSP 声明的格式如下:
〈%!声明部分%〉
|
看下面页面的源代码:
〈%@page contentType="text/html; charset=gb2312" language="java"%〉
<1--下面是JSP 声明部分> 〈%! //声明一个整形变量 public int count; //声明一个方法 pUblicStringinfo () return "hello"; %〉 〈% //将 count 的值加i后输出 out.println(count++); 屯〉 〈% //输出 info()方法的返回值 out.println(info()); %〉
|
在浏览器中测试该页面时,可以看到正常输出了count值,每刷新一次, count值将加1,同时也可以看到正常输出了info方法的返回值。
打开多个浏览器,甚至可以在不同的机器上打开浏览器刷新该页面,发现每个客户端 count值是完全连续的,所有的客户端共享了同一个count变量。这是因为: JSP页面会编译成一个Se凹let 类,每个Servlet在容器中只有一个实例:而在JSP 中声明的变量是类的成员变量,成员变量只在创建实例时初始化,该变量的值将一直保存,直到实例销毁。
值得注意的是, infoO的值也可正常输出。因为JSP声明的方法其实是在JSP编译生成的 Servlet类的方法一-Java里的方法是不能独立存在的,即使在JSP页面中也不行。注意: JSP声明中独立存在的方法,只是一种假象。
posted on 2012-10-29 13:54 ellisonDon 阅读(396) 评论(0) 编辑 收藏 举报