欢迎来到天天文库
浏览记录
ID:33962502
大小:40.00 KB
页数:6页
时间:2019-03-02
《java数据流的应用》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、JAVA数据流的应用常常逛WWW的人,一定不会对许多起始页的计数器感到陌生。当你每一次光临某些站点的起始页时,起始页的计数器就会亲切的告诉你,从某年某月某日开始算起,您是第几个光临这个起始页的人。你可能知道这是用CGI做的,后面是什么?不是十分清楚吧!我们这里来分析一下计数器吧;如是我写下本文。当你看完本文之后人你会觉得计数器是这样的简单、以后上Internet网时不会觉得漂亮的是多么的复杂,而是一个CGI和数据流的杰作。看看吧是多么的平常!importjava.net.*;importjava.io.*;importjava.awt.*;在这里小程序引入了三类库。都是标准类
2、库,为了使用数据流而引入了java.io.*类库;为了使URL引入了java.net.*类库;同时为了在字形与图形引入了java.awt.*类库。publicclassJavaCounterextendsjava.applet.Applet这里扩展了Applet,这里的JavaCounter是继承了Applet的属性。{Fontfn=newFont("TimesRoman",Font.BOLD,24);设置了显示的字形和使用的确24点字模。Stringcounter_str,myurl;Stringfilename;取得资源Counter。publicvoidinit()关键
3、字public告诉java编译器其它对象从类Applet的外部调用init函数关键字void告诉java编译器init不向prowser返回任何值。{filename=getParameter("filename");if(filename==null)filename="home.txt";myurl="http://202.115.144.32/cgi-bin/counter.exe?home.txt";try{URLserverURL=newURL(myurl);DataInputStreamdis;dis=newDataInputStream(serverURL.op
4、enStream());counter_str=dis.readLine();counter_str=dis.readLine();dis.close();}catch(MalformedURLExceptionmfURLe){}catch(IOExceptionioe){}}这里我们从网络的远程取得数据文件的过程。注:虽然有此URL位置看起来长,但在JAVA中基本上是一资源的传输协议,加上一个资源的名称。如上面中的HTTP一样都是典型的传输协议。通常具有一个或多个结构。为了处理方便,在JAVA中特别为URL位置设计了URL类,可以用一个URL对象记录下完整URL信息,这里我
5、们使用的就是URL。同时我们用了java.io.*;中的数据流的程序包。数据流可以看作是数据的通信途径。通常是建立一条数据通道后在程序读取时向这个通道发送信号、远方数据自动送来的过程我们叫做"数据流"。而本程序主要部分也是这些。publicvoidpaint(Graphicsg){g.setFont(fn);g.setColor(Color.blue);g.drawString("庆祝吧!第"counter_str"位朋友您的到来!",10,50);}当我们从数据流收到信息后,就由Applet中的方法paint去处理,并把设好的字形显示于屏幕上。}注:编好这个程序之后还要一个
6、CGI程序才能发挥作用。还是说一下CGI的其本思路吧!我们先打开"counter.exe?home.txt"的记录读出记录加1并更新数据关闭记录。并输出记录通过数据流给JAVA程序读取的方式。下面CGI例子是用C++编的你不妨试试吧!!同时为了读和应用的方便写下了CGI与JAVA的全部原程序。Java原程序如下:importjava.net.*;importjava.io.*;importjava.awt.*;publicclassJavaCounterextendsjava.applet.Applet{Fontfn=newFont("TimesRoman",Font.BOL
7、D,24);Stringcounter_str,myurl;Stringfilename;publicvoidinit(){filename=getParameter("filename");if(filename==null)filename="home.txt";myurl="http://202.115.144.32/cgi-bin/counter.exe?home.txt";try{URLserverURL=newURL(myurl);DataInputStreamdis;dis=newData
此文档下载收益归作者所有