<%@ page contentType="text/html;charset=gb2312"%>
<html>
<body>
<%! int counter=0;
synchronized void counterFunction()
{
counter++;
}
%>
<%counterFunction();%>
网站计数器<br>
你是第<%=counter%>位访问者
</body>
</html>
************************************************
问题:
1.<%@ page contentType="text/html;charset=gb2312"%>中,请问contentType是何解?
/*“该属性设置JSP布面的MIME(Multipurpose Internet Mail Extention)类型。设置类型的格式为"MIME类型"或"MIME类型;charset=编码".在JSP页面默认情况下设置的字符编码为ISO-8859-1,即"type=text/html;charset=ISO-8859-1"”。*/是什么意思?
2.synchronized void counterFunction()何解?为什么要用synchronized?counterFunction()在此是构造函数还是类方法?
3.<%counterFunction();%>为什么不用对象.方法调用?
另请教page属性中session是什么意思?谢谢!

解决方案 »

  1.   

    JSP页面第一次运行时变成一个Java文件(Servlet),包含一个类,你这里定义的方法就成为这个servlet类的方法synchronized是同步的意思,在多线程程序中使用。在<%!  %>中声明的变量成为servlet的属性,而在<% %>中定义的变量是方法中的局部变量,servlet应该是多线程的,所以使用到这个属性的方法必须考虑同步
      

  2.   

    session的意思是会话,http协议是stateless协议,无法记住用户前面的操作和状态,借助于session,可以保存这些东西contentType顾名思义是内容的类型:内容是什么类型的,编码是什么。MIME说明类型,浏览器根据这个决定怎么处理,在窗口中打开,下载,用word打开等charset是编码类型,说明页面中字符采用的字符编码
      

  3.   

    请教:3.<%counterFunction();%>为什么不用对象.方法调用?谢谢!