成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡單介紹Java 網絡程序

開發 后端
本文介紹的是java的網絡程序,希望對你有幫助,一起來看。

網絡程序,一般是指帶網絡接連或需要網絡接連才能使用的或能脫機和聯機使用的新型智能程序。Java在網絡編程這個地方做的很好,java的主要目的也是為了網絡而生的,它能方便的訪問網絡上的資源。我們這節課來介紹網絡通訊的兩種機制:URL通信機制,Socket通信機制。

URL表示了Internet上一個資源的引用或地址。Java網絡應用程序也是使用URL來定位要訪問的Internet的資源。在jdk里面java.net.URL也是一個類,它來封裝URL的一些細節。目前大家可以把URL理解為網址,http://www.100jq.com/default.aspx 這就是個URL。http是協議名(超文本傳輸協議)用“://”隔開www.100jq.com 是主機名。Default.aspx是文件名。它的端口號沒有寫,默認是80。

實踐:

  1. import java.net.*;  
  2. public class ParseURL {  
  3. public static void main(String[] args) throws MalformedURLException{  
  4. URL url = new URL("http://www.100jq.com:45175/default.aspx");  
  5. System.out.println("協議是 "+url.getProtocol());  
  6. System.out.println("主機是 "+url.getHost());  
  7. System.out.println("文件名是 "+url.getFile());  
  8. System.out.println("端口號是 "+url.getPort());  
  9. }}  
  10. /*  
  11. URL這個對象中提供了很多方法像是  
  12. getProtocol()  
  13. getHost()  
  14. getFile()  
  15. getPort()  
  16. */ 

我們可以通過URL對文件或資源讀取,也可以通過URLConnection讀取,也可以通過這個寫入數據限于cgi腳本。

實踐:

  1. import java.net.*;  
  2. import java.io.*;  
  3. public class URLConnectionReader {  
  4. public static void main(String[] args) throws IOException {  
  5. URL google = new URL("http://www.100jq.com/");  
  6. URLConnection g = google.openConnection();  
  7. BufferedReader in = new BufferedReader(new InputStreamReader(g.getInputStream()));  
  8. String inputLine;  
  9. while ((inputLine=in.readLine())!=null)  
  10. System.out.println(inputLine);  
  11. in.close();  
  12. }  

URL和URLConnection類提供了較高層次的網絡訪問。有時候需要進行較低層次的訪問。編寫C/S模型的程序時,就要使用Socket通信機制了。因為在網絡上不一定非得訪問文件。

實踐:

  1. //先寫個客戶端的應用  
  2. import java.net.*;  
  3. import java.io.*;  
  4. public class SimpleClient {  
  5. public static void main(String args[]) {  
  6. try {  
  7. // 在5432端口打開服務器連接  
  8. // 在這里用localhost與127.0.0.1是一個意思  
  9. Socket s1 = new Socket("127.0.0.1"5432);   
  10. // 對這個端口連接一個reader,注意端口不能夠占用別的  
  11. BufferedReader br = new BufferedReader(  
  12. new InputStreamReader(s1.getInputStream()));  
  13. // 讀取輸入的數據并且打印在屏幕上  
  14. System.out.println(br.readLine());  
  15. //當完成時關閉流和連接  
  16. br.close();  
  17. s1.close();  
  18. catch (ConnectException connExc) {  
  19. System.err.println("Could not connect to the server.");  
  20. catch (IOException e) {  
  21. // ignore  
  22. }}}  
  23. //這是服務端的應用  
  24. import java.net.*;  
  25. import java.io.*;  
  26. public class SimpleServer {  
  27. public static void main(String args[]) {  
  28. ServerSocket s = null;  
  29. // 注冊服務端口為5432  
  30. try {  
  31. s = new ServerSocket(5432);  
  32. catch (IOException e) {  
  33. e.printStackTrace();  
  34. }  
  35. // 運行監聽器并接收,永遠循環下去。因為服務器總要開啟的  
  36. while (true) {  
  37. try {  
  38. // 等待一個連接的請求  
  39. Socket s1 = s.accept();  
  40. // 得到端口的輸出流  
  41. OutputStream s1out = s1.getOutputStream();  
  42. BufferedWriter bw = new BufferedWriter(  
  43. new OutputStreamWriter(s1out));  
  44. // 發送一個字符串  
  45. bw.write("百家拳軟件項目研究室歡迎您!/n");  
  46. // 關閉這個連接, 但不是服務端的socket  
  47. bw.close();  
  48. s1.close();  
  49. catch (IOException e) {  
  50. e.printStackTrace();  
  51. }}}} 

 

執行這個程序和其它的不太一樣,先用javac將兩個文件編譯之后。然后敲start開啟另一個窗口。用start命令開啟的窗口繼承了原來窗口的特性。

接著在原來的窗口上執行服務端程序java SimpleServer.在新窗口中執行java SimpleClient 就會看到結果了。注意如果如果在啟動服務端的時候拋出bindException則說明5432這個端口已經被別的程序占用著,改成別的端口號就可以了。通常選用端口的時候,其數字最好不要小于1024,1024一下的端口很多都是專用的端口。

希望通過本文的介紹,能給你帶來幫助。

【編輯推薦】

  1. 詳細介紹JAVA和C++區別
  2. 詳細介紹Java EE開發四大常用框架
  3. 分析JAVA的Random類
  4. 談java web server與io形式
  5. 談JAVA靜態載入的兩種方式
責任編輯:于鐵 來源: 互聯網
相關推薦

2020-09-11 12:49:27

神經網絡

2009-07-29 15:15:31

ASP應用程序

2010-07-08 13:39:12

HART協議

2011-06-27 13:17:07

Java EE

2010-06-24 10:42:42

Bzip2壓縮

2010-03-15 15:49:01

Ubuntu 8.10

2010-03-16 18:44:55

Ubuntu 8.10

2011-03-04 13:19:09

VSFTP介紹

2011-04-01 09:39:17

zabbix

2011-02-22 16:38:03

Konqueror

2011-01-21 18:08:22

Qmail

2011-03-29 09:14:37

2011-01-21 10:40:52

Sendmail

2011-02-24 14:40:47

Proftpd

2011-01-21 16:49:15

Zimbra

2011-02-23 13:28:12

2009-06-17 17:59:01

介紹Spring

2011-06-28 11:27:19

java克隆對象

2011-07-11 14:19:54

JAVA串口通信

2009-09-07 16:09:19

C#和Java特點
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲巨乳自拍在线视频 | 国产精品91视频 | 欧美成人久久 | 日本三级网站在线 | 成人18亚洲xxoo | 91丨九色丨国产在线 | 在线视频一区二区三区 | 成人精品毛片 | 亚洲二区在线 | 成人美女免费网站视频 | 成人超碰| 日韩精品在线免费 | 毛片电影| 亚洲天堂一区 | 中文无吗 | www.日日干 | 在线看日韩 | 婷婷久久一区 | 一区二区三区视频免费看 | 成人久久一区 | 一级做a| 日韩一区二区在线播放 | 欧美日韩国产精品一区二区 | 一区二区三区在线播放 | 亚洲国产成人av好男人在线观看 | 欧美不卡一区二区 | 国产精品成人品 | 国产精品视频一 | 91精品久久久久久久 | 久久新| 91精品久久久久久久久久入口 | 一区二区三区四区视频 | 国产精品高潮呻吟 | 日日摸日日碰夜夜爽2015电影 | 国内自拍视频在线观看 | 精品国产一区二区三区av片 | 久久噜噜噜精品国产亚洲综合 | 午夜视频在线观看网站 | 欧美一区二区网站 | 99精品国产一区二区青青牛奶 | 欧美日韩中文字幕在线 |