六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

JAVA完成服務器與多用戶跨平臺的通訊

[摘要]隨著網絡技術的發展,我們的局域網越做越大,里面的服務器客戶機數量也很多。在為我們提供了諸多便利的同時,我們發現,由于服務器和客戶機的操作平臺不同,它們之間的通信是一個麻煩的問題,因為很多現成的通信軟...
隨著網絡技術的發展,我們的局域網越做越大,里面的服務器客戶機數量也很多。在為我們提供了諸多便利的同時,我們發現,由于服務器和客戶機的操作平臺不同,它們之間的通信是一個麻煩的問題,因為很多現成的通信軟件或者源程序都是針對同一平臺的。為了解決這個問題,我們采用JAVA編程,成功的實現了LINUX,WINDOWS NT,WIN98跨平臺的通訊。

---- 服務器程序源代碼如下:

//server.java import java.io.*; import sun.net.*; class
server extends NetworkServer //定義服務器類 {DataInputStream net_input; //定義數據輸出
PrintStream net_output; //定義數據輸入 public static void main(String args[]) { new
server();} public server() //運行服務器功能,并把端口設為1111 { try
{startServer(1111);} catch (Exception e) { System.out.println( "Unable to start
server."); return; } System.out.println("Waiting for clients..."); } public
void serviceRequest() //定義服務應答功能 { net_input = new
DataInputStream(clientInput); net_output = System.out; String user = read_net_input();
System.out.println(user+" connected!"); while(true) { String string;
if((string=read_net_input( ))==null) break; //如果客戶機輸入NULL,中斷服務
write_net_output(user+":"+string); } System.out.println(user+" has
disconnected!"); } String read_net_input() { try {return net_input.readLine();}
catch(IOException e) {return null;} } void write_net_output(String string) {
net_output.println(string); net_output.flush(); } } 客戶機程序源代碼:
//client.java import java.io.*; import sun.net.*; class client extends NetworkClient //定義客戶機類
{ DataInputStream net_input; PrintStream net_output; public static void main(String
args[])//獲得服務器IP地址和客戶機名 { if(args.length<2) { System.out.println( "To run,type:\n"); System.out.println( "java client <host> <username>&quot;); }
System.out.println( &quot;Connecting...&quot;); try {new client(args[0],args[1]);} catch
(Exception e) { System.out.println( &quot;Unable to create NetworkClient.&quot;); return;
} } public client (String host,String username) throws IOException //與服務器鏈接功能
{ super(host,1111); if(serverIsOpen()) { System.out.println( &quot;Connected to
server.&quot;); net_input = new DataInputStream(System.in); net_output = serverOutput;
net_output.println(username); chat(); } else System.out.println(&quot;Error:Could not
connect to server.&quot;); } void chat() //定義信息傳遞函數,當輸入EXIT時,中斷鏈接
{ String string; System.out.println( &quot;Type EXIT to exit&quot;); while(true) {
string=read_net_input(); if(string.equalsIgnoreCase(&quot;EXIT&quot;)) break;
write_net_output(string); } System.out.println(&quot;Disconnecting...&quot;);
close_server(); System.out.println(&quot;Done!&quot;); } String read_net_input() { try
{return net_input.readLine();} catch(IOException e) {return null;} } void
write_net_output(String string) { net_output.println(string); net_output.flush(); } void
close_server() { try {closeServer();} catch(Exception e) {System.out.println(&quot;Unable
to close server.&quot;);} } }
----
  把兩個源程序輸入后,在任一操作平臺上運行javac server.java和javac client.java,分別把它們編譯成class文件。由于java的class文件的跨平臺性,只要在服務器上運行相應的java解析程序執行server,在客戶機上運行相應的java解析程序執行client ,就能實現客戶機和服務器之間的通訊了,而且服務器允許多用戶接入。以筆者學校的局域網為例,源程序在WIN98平臺上用JDK 1.1.5編譯成功,把server.class拷到一臺LINUX服務器上,執行java server(該服務器已經安裝了JAVA的RPM包),在其他WINNT平臺上拷入client.class,運行jview client 192.168.100.1 NT(192.168.100.1是LINUX服務器的IP地址),就能實現跨平臺通訊了。


主站蜘蛛池模板: 日本亚洲乱码中文字幕影院 | 性8成人有声小说在线播放 性 色 黄 一级 | 上色天天综合网 | 色综合天天射 | 天堂网www在线观看 天堂网www在线 | 中国国产aa一级毛片 | 青娱乐综合网 | 日韩精品福利视频一区二区三区 | 青草视频免费在线观看 | 涩涩五月天 | 一本久道久久综合中文字幕 | 欧美一级特黄一片免费 | 日本成片免费高清 | 青娱乐国产 | 五月激情啪啪网 | 亚洲最大成人网 色香蕉 | 日本天堂免费 | 日韩首页 | 午夜小视频网站 | 色综合成人网 | 天天草狠狠干 | 亚洲精品一二三四区 | 日韩欧美高清在线 | 天天摸夜夜操 | 亚洲综合激情网 | 中国美女牲交一级毛片 | 探花视频免费观看高清 | 日本狠狠干 | 亚洲最新网站 | 小视频在线观看免费 | 青娱乐九色 | 婷婷激情四月 | 日韩成人免费aa在线看 | 日产精品一卡2卡三卡4乱码久久 | 亚洲精品福利在线观看 | 欧美性视屏 | 人人入人人爱 | 五月婷婷丁香 | 日韩高清欧美 | 欧美一级一级做性视频 | 午夜一级精品免费毛片 |