zoukankan      html  css  js  c++  java
  • 简单图片的计数器也可用java实现

    利用java实现简单图片的计数器,运行图:

    想学习更多关于java的知识,可以点击《Java EE软件工程师》进行学习。

    <%@ page contentType="text/html;charset=gb2312"%>
    <%@ page language="java" import="java.io.*"%> 
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>计数器</title>
    </head>

    <%!
    //同步更新计数器

     

    synchronized void counter(){ 

           ServletContext application=getServletContext();   //构造application对象(可选)

            String szPath=application.getRealPath("/");       //得到当前路径

                    szPath=szPath+"hits.txt";                //计数器文件 0-9999999999999...

            String szRecord="";                               //记数 String

            int nRecord=0;                             //记数 int

            try{ 

               BufferedReader file=new BufferedReader(new FileReader(szPath));

                szRecord=file.readLine();                     //读取计数器文件

            }

            catch(Exception e){ 

               System.out.println(e); 

           }

      if(szRecord==null){

       szRecord="0";                                         //如果计数器文件为空

            } 

           nRecord=java.lang.Integer.parseInt(szRecord)+1;    //计数器+1

      try{  

              File f=new File(szPath);

                PrintWriter pw=new PrintWriter(new FileWriter(f));

                pw.print(nRecord); //写文件。这种频繁写文件保存记数的方法,不可取。 

               pw.close();

            } 

           catch(Exception e){  

              System.out.println(e); 

           } 

       }  

    %>

    <% 

    //显示计数器
        if(session.isNew()){                               //如果是新会话
            counter();
        }    
        String Path=application.getRealPath("/");
        // out.println(Path);
        String szPath=Path+"hits.txt";
        String szRecord="";
        BufferedReader file=new BufferedReader(new FileReader(szPath));
        try{
            szRecord=file.readLine();
            if(szRecord==null){
               szRecord="0";  
            }
        }
        catch(Exception e){
            System.out.println(e);
        }
     //显示7位数字gif图像
        String szOut="<body topmargin='0' leftmargin='0'>当前访问量:";
        int i=0;
        int k=7-szRecord.length();                          //"0"的个数
        for (i=0;i<k;i++){                                                 //显示"0"
            szOut=szOut+"<img src='images/0.gif'>";
        }        
        for (i=0;i<szRecord.length();i++){                               //显示非"0"
            szOut=szOut+"<img src='images/"+ szRecord.charAt(i) +".gif'>";
        }
        szOut=szOut+"</body>";
        out.println(szOut);     
    %>

    </html>

    想了解更多java学习课程,可以关注e良师益友

  • 相关阅读:
    computed计算属性依赖的响应式属性为对象obj时,对象obj中有属性字段【A、B、C】时,对A、B进行了if判断,那么只有A、B变化时,计算属性才更新,否则不更新
    computed计算属性依赖的响应式属性为对象时,只要依赖的属性变化(值同地址不同:变化),即使前后值相同,监听computed计算属性也是在变化
    S7-200SMART与S7-1500通信
    STM32F103+OLED绘制曲线
    两台S7-300PLC之间的PROFIBUS-DP主从通信示例
    VBScript连接mysql数据库
    mysql数据库基础知识--入门必看
    小白版windows下mysql配置
    mysql5.7.12直接解压安装过程
    西门子S7-200SMART 指针
  • 原文地址:https://www.cnblogs.com/xiaoxiao1/p/4087134.html
Copyright © 2011-2022 走看看