首页 > 代码库 > JSP简单练习-一个简单的计数器

JSP简单练习-一个简单的计数器

在JSP中,在"<%"和"%>"之间书写的程序代码成为java程序片。

一个JSP页面中可以有多个java程序片。要注意的是,在Java程序片中声明的变量在它们所在JSP页面的所用程序片及表达式中都有效。基于此,可以把一个较大的程序片分成几个小的程序片,还可在其中插入HTML语句,以便编写的程序代码更具有可读性。

在程序片中声明的变量只在页面有效,是局部变量,它在不同的客户访问同一个页面时,此变量是不能共享的。但如果是在"<%!"和"%>"之间声明的变量就可以在不同的客户之间共享,其有效范围是整个Web应用,在服务器关闭后变量才会被释放。

用"<%="和"%>"可以直接输出变量或表达式的值,变量或表达式的值将作为一个字符串在浏览器中输出。这种方法在JSP编程中是比较常用的,特别在与HTML标记混合编写时较为常用。如下代码:

<%@ page contentType="text/html; charset=gb2312" %>
<html>
<body>
     <%!
          int counter=0;
          synchronized void counterFunction()
          {
               counter++;
          }
      %>
      <%counterFunction();%>
        网站计数器<br>
        你是第<%=counter %>位访问者
</body>
</html>
该程序首先在"<%!“和”%>"之间声明了一个计数器变量和计数的方法,计数器变量将在客户之间共享,直至服务器关闭。计数方法实际上就是对计数变量做增1处理,在方法的前面加了sychronized关键字,这个关键字可防止客户在同时调用此方法更改计数变量的值时发生冲突,因此对方法作了串行化处理。