Java的网络程序设计
anywhereyoustart.net 伍威
Java语言是Internet上最热门的编程语言,本文针对Java的网络功能,对Java从网络上获取图象、声音、HTML文档及文本文件等编程方法作了初步的介绍。文中提供了简明易懂的实例。
Java语言的特性以及基本的编程方法已有很多文章作过介绍。但是,广大Java爱好者更希望了解Java更深一步的编程方法,本文就Java的网络功能及其编程方法作一初步的介绍。
一、 Java编程简介
1. 编程环境:
操作系统 RedHat7.0
编译软件 JDK1.2.2
浏览软件 Netscape6.0
2. 编程方法:
先用文本编辑器如gedit等输入Java程序,以.java为文件名后缀存盘。再执行命令行:“Javac 文件名”来编译Java程序。编译后生成后缀为.class的字节码文件。最后,如果是Java Applitcation,则执行命令行:“Java 字节码文件名”来运行Java程序。如果是Java Applet,则用文本编辑器输入调用该Java Applet的HTML 文档, 以 .htm 为文件名后缀存盘。 再执行命令行:“appletviewer HTML文件名”来运行Java Applet。或用Netscape打开该HTML文档。
3.统一资源定位器(URL):
· URL(String, String, int, String)
构造方法,创建一个包含协议类型、主机名、
端口号和路径的URL对象
· URL(String, String, String)
构造方法,创建一个包含协议类型、主机名和路径
的URL对象,其中端口号为缺省值
· URL(String)
构造方法,创建一个URL对象,参数将协议
、主机名、端口号和路径组合起来
· URL(URL,String)
构造方法,根据给定URL对象与相对路径创建一个新的URL对象
· Object getContent( )
检索URL内容信息,并返回给对象
· InputStream openStream( )
从资源处返回一个输入流
· URLConnection openConnection( )
生成一个URLConnection对象
URLConnection类:
· protected URLConnection(URL)
构造方法,创建一个针对指定URL对象的URLConnection类
· Object getContent( )
返回URL对象所对应的内容
· InputStream getInputStream( )
获取从对象中读取的字节流
· Protected static String guessContentTypeFromStream(InputStream is)
根据输入流猜测内容的类型
二、Java网络功能及获取网络上资源的一般步骤
Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出来。在编程处理上,一般先生成一个URL类型的对象,然后用 Java中相应的方法(method)获取该对象所代表的资源。下面分别介绍Java网络功能的几个例子。
三、从网络上获取图象
Java Applet可以直接从网络上结点获取图象并显示出来。现在来看一个简单的图象显示的例子:
import java.applet.*;
import java.net.*;
import java.awt.*;
public class imag extends Applet{
Image image;
public void init() {
String url = \"http:/.anywhereyoustart/pic.jpg\"; //赋以URL:http://anywhereyoustart/pic.jpg
try {
image = getImage(new URL(url)); //从Web网上获取JPG图象
} catch(Exception e){}
} public void paint(Graphics g) {
g.drawImage(image, 0, 0,this); //把网络中指定的URL地址载入图象
}
}
将上述程序以imag.java存盘, 执行javac imag.java,将得到编译后生成的imag.class,最后创建调用这两个Java Applet的HTML文档,如imag.class对应的HTML文档可如下:
< html >
< head >
< title >imag< /title >
< /head >
< center >
< applet code=imag.class width=550 height=250 >
< /applet >
< /html >
将该HTML文档存入imag.html文件,用Netscape打开, 如果你的计算机连入了Internet,便可以看到Java Applet 所显示的从网络上获得的图象了。
四、从网络上获取声音
Java从网络上获取声音文件并播放声音的编程方法有两类,一是利用Java提供的play(URL)及play(URL,String) 直接播放网络上的声音文件,另一类是通过getAudioClip(URL)或getAudioClip(URL,String)先从网络上获取声音文件,并生成AudioClip 类型的对象,然后对该对象进行操作。
import java.applet.*;
import java.awt.*;
import java.net.*;
public class sound1 extends Applet
{ AudioClip loopClip;
public void paint(Graphics g) {
String Audur = \"http://anywhereyoustart/ sound.au\"; //赋以URL:http://anywhereyoustart/sound.au
try {
play(new URL(Audur)); //播放声音
} catch(Exception e){}
}
}
五、显示网络上其他HTML文档及文本文件
利用Java提供的getAppletContext().showDocument(URL)可以显示其他结点的HTML文档及文本文件,同前面的显示网络上其他结点的图象,
import java.applet.*;
import java.awt.*;
import java.net.*;
public class showdoc extends Applet
{
URL docur= null;
public void paint(Graphics g) {
try {
docur=new URL(\"http://anywhereyoustart/index.html\"); //index可以是TXT等文档
catch (MalformedURLException e) {
System.out.println(\"Can\t open the URL \");
}
if (docur != null) {
getAppletContext().showDocument(docur,\"_blank\"); //显示文档
}
}
}
发布人:netbull 来自:LinuxAid