当时不会原理,后面知道<%! %>里面声明的变量是Java中的实例变量,<%! %>声明的方法是实例成员方法,out是jsp中的一个可以直接输出到网页中的对象,就立马就知道怎么写了!!!我的图片是从网上截图的,
0.png代表数字0图片,所以就是按照顺序来显示图片的噢,因为ascii码的原因所以要减去’0’,
另外,img的src的相对路径需要和index.jsp放在一个文件夹下面,否则显示不了哦
而且就是因为我的程序是在Mac上运行的,不知道为啥count一开始就至少访问了2次,然后idea自动启动tomcat的时候就是第三次打开,每次都是最开始显示3次,后面把代码放到Windows里面跑就一定是从1开始的,我也很懵逼为啥,后面没办法了,只能在输出的那里直接减去2,使得次数从1开始
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>图片计数器</title>
</head>
<body>
<%!
int count=0;
%>
<%!
synchronized void increase(){
++count;
}
%>
<%
increase();
out.print("该网站已经被访问");
char[] a=String.valueOf(count-2).toCharArray();
for (int i=0;i<a.length;++i){
out.print("<img src="+(a[i]-'0')+".png height=\"2%\" width=\"1%\" alt=\"此图片暂时以为某些原因而无法展示\" />");
}//此属性的实质作用是图片在无法正确显示的时候起到文本替代的作用
out.print("次 ");
out.print("该网站已经被访问了"+(count-2)+"次");
%>
</body>
</html>