国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

手把手教你 Socket 通信(TCP/IP)

開發(fā) 后端 通信技術(shù)
本文將給出完整 Socket 通信代碼,在 eclipse 中親測(cè)有效。在Android Studio中用Java開發(fā)也是一樣的,只是把代碼和控件搭配一下,注冊(cè)監(jiān)聽就好。

網(wǎng)絡(luò)上的兩個(gè)程序通過一個(gè)雙向的通信連接實(shí)現(xiàn)數(shù)據(jù)的交換,這個(gè)連接的一端稱為一個(gè)socket。

建立網(wǎng)絡(luò)通信連接至少要一對(duì)端口號(hào)(socket)。socket 本質(zhì)是編程接口(API),對(duì)TCP/IP的封裝,TCP/IP也要提供可供程序員做網(wǎng)絡(luò)開發(fā)所用的接口,這就是Socket編程接口;HTTP是轎車,提供了封裝或者顯示數(shù)據(jù)的具體形式;Socket是發(fā)動(dòng)機(jī),提供了網(wǎng)絡(luò)通信的能力。

下載eclipse:

https://www.eclipse.org/

本文將給出完整 Socket 通信代碼,在 eclipse 中親測(cè)有效。在Android Studio中用Java開發(fā)也是一樣的,只是把代碼和控件搭配一下,注冊(cè)監(jiān)聽就好。區(qū)別就是在 AS 中 import 的聲明不太一樣,然后窗口不需要自己建立。

效果如圖:

在eclipse中,F(xiàn)ile→New→Java Project→起個(gè)英文名字→Finish(我起的名字是TCP)

目錄結(jié)構(gòu):

新建完以后有個(gè)src默認(rèn)包,右鍵 src→New→Package→ 輸入 com.net(因?yàn)槌绦蚶镂矣玫陌拿质沁@個(gè),你可以同時(shí)兩個(gè)一起改)→ Finish

然后右鍵 com.net → New → Class → 輸入 TCPClient(因?yàn)槲页绦蚶锩嬗玫倪@個(gè)類名稱)

然后右鍵 com.net → New → Class → 輸入 TCPServer(因?yàn)槲页绦蚶锩嬗玫倪@個(gè)類名稱)

兩個(gè)里面分別粘貼代碼:

TCPServer

  1. package com.net; 
  2.  
  3. import java.io.*; 
  4. import java.net.*; 
  5. import java.awt.*; 
  6. import java.awt.event.*; 
  7.  
  8. public class TCPServer { 
  9.  static DataInputStream dis=null
  10.  public static void main(String[] args){ 
  11.   boolean started=false
  12.   Socket s=null
  13.   TextArea ta=new TextArea(); 
  14.   ta.append("從客戶端接受的數(shù)據(jù):"+"\n"); 
  15.   ServerSocket ss=null
  16.   try{ 
  17.    ss=new ServerSocket(8866);                       //端口號(hào) 
  18.   }catch(BindException e){ 
  19.    System.exit(0); 
  20.   }catch(IOException e){ 
  21.    e.printStackTrace(); 
  22.   } 
  23.   Frame f=new Frame("服務(wù)器端");              //窗體名稱  
  24.   f.setLocation(300, 300);           //窗體出現(xiàn)位置 
  25.   f.setSize(200, 200);            //窗體大小 
  26.   f.add(ta,BorderLayout.NORTH); 
  27.   f.pack(); 
  28.   f.addWindowListener(new WindowAdapter(){ 
  29.    public void windowClosing(WindowEvent e){ 
  30.     System.exit(0); 
  31.    } 
  32.   }); 
  33.   f.setVisible(true); 
  34.   try{               //try-catch塊捕捉異常 
  35.    started=true
  36.    while(started){ 
  37.     boolean bConnected=false
  38.     s=ss.accept(); 
  39.     bConnected=true
  40.     dis=new DataInputStream(s.getInputStream()); 
  41.     while(bConnected){ 
  42.         String str=dis.readUTF(); 
  43.         ta.append(str+"\n"); 
  44.     } 
  45.    } 
  46.   }catch(EOFException e){                                  
  47.    System.out.println("Client closed!"); 
  48.   }catch(IOException e){ 
  49.    e.printStackTrace(); 
  50.   }finally{ 
  51.    try{ 
  52.     if(dis!=null
  53.      dis.close(); 
  54.     if(s!=null
  55.      s.close(); 
  56.    }catch(Exception e){ 
  57.     e.printStackTrace(); 
  58.    } 
  59.   } 
  60.  } 

TCPClient

  1. package com.net; 
  2. import java.awt.*; 
  3. import java.awt.event.*; 
  4. import java.io.*; 
  5. import java.net.*; 
  6.  
  7. public class TCPClient extends Frame{ 
  8.  Socket s=null
  9.  DataOutputStream dos=null
  10.  DataInputStream  dis=null
  11.  TextField tf=new TextField(40); 
  12.  List list=new List(6); 
  13.  public static void main(String[] args){ 
  14.   TCPClient client=new TCPClient(); 
  15.   client.list.add("向服務(wù)器端發(fā)送的數(shù)據(jù):"); 
  16.   client.setTitle("客戶端"); 
  17.   client.run(); 
  18.  } 
  19.  public void run(){ 
  20.   setLocation(400,300); 
  21.   this.setSize(300, 300); 
  22.   add(tf,BorderLayout.SOUTH); 
  23.   add(list,BorderLayout.NORTH); 
  24.   pack(); 
  25.   this.addWindowListener(new WindowAdapter(){ 
  26.    public void windowClosing(WindowEvent e){ 
  27.     disconnect(); 
  28.     System.exit(0); 
  29.    } 
  30.   }); 
  31.   tf.addActionListener(new MyListener()); 
  32.   setVisible(true); 
  33.   connect(); 
  34.  } 
  35. public void connect(){ 
  36.  try{ 
  37.   s=new Socket("127.0.0.1",8866); 
  38.   dos=new DataOutputStream(s.getOutputStream()); 
  39.  }catch(UnknownHostException e){ 
  40.   e.printStackTrace(); 
  41.  }catch(IOException e){ 
  42.   e.printStackTrace(); 
  43.  } 
  44. public void disconnect(){ 
  45.  try{ 
  46.   dos.close(); 
  47.   s.close(); 
  48.  }catch(IOException e){ 
  49.   e.printStackTrace(); 
  50.  } 
  51. private class MyListener implements ActionListener{ 
  52.     public void actionPerformed(ActionEvent e){ 
  53.       String s1=null
  54.       String s2=null
  55.       String str=tf.getText().trim(); 
  56.       list.add(str); 
  57.       tf.setText(""); 
  58.       try{ 
  59.        dos.writeUTF(str); 
  60.        dos.flush(); 
  61.       }catch(IOException e1){ 
  62.          e1.printStackTrace();   
  63.       } 
  64.       } 
  65.     } 

然后先運(yùn)行服務(wù)器,再運(yùn)行客戶端,否則會(huì)報(bào)錯(cuò),因?yàn)镾ocket通信本質(zhì)是先打開服務(wù)器監(jiān)聽端口。然后就會(huì)出現(xiàn)效果圖。

本機(jī)回環(huán) IP 是 127.0.0.1,你可以改為其他 IP 地址,即可實(shí)現(xiàn)跨機(jī) Socket 通信。

本文轉(zhuǎn)載自微信公眾號(hào)「嵌入式Linux系統(tǒng)開發(fā)」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系嵌入式Linux系統(tǒng)開發(fā)眾號(hào)。

 

 

責(zé)任編輯:姜華 來源: 嵌入式Linux系統(tǒng)開發(fā)
相關(guān)推薦

2011-05-03 15:59:00

黑盒打印機(jī)

2025-05-07 00:31:30

2011-01-10 14:41:26

2021-07-14 09:00:00

JavaFX開發(fā)應(yīng)用

2011-02-22 13:46:27

微軟SQL.NET

2021-12-28 08:38:26

Linux 中斷喚醒系統(tǒng)Linux 系統(tǒng)

2021-02-26 11:54:38

MyBatis 插件接口

2023-04-26 12:46:43

DockerSpringKubernetes

2022-12-07 08:42:35

2022-01-08 20:04:20

攔截系統(tǒng)調(diào)用

2022-07-27 08:16:22

搜索引擎Lucene

2022-03-14 14:47:21

HarmonyOS操作系統(tǒng)鴻蒙

2020-03-08 22:06:16

Python數(shù)據(jù)IP

2021-07-03 09:04:22

XPathPython免費(fèi)代理IP

2020-07-09 08:59:52

if else模板Service

2009-11-09 14:57:37

WCF上傳文件

2024-10-16 11:40:47

2016-04-27 09:49:16

用戶模型產(chǎn)品總結(jié)

2009-04-22 09:17:19

LINQSQL基礎(chǔ)

2021-09-30 18:27:38

數(shù)據(jù)倉庫ETL
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产精品家庭影院| 亚洲欧洲中文日韩久久av乱码| 欧美猛少妇色xxxxx| 美女羞羞视频在线观看| 一区二区在线观看免费视频播放| 中文字幕第一页亚洲| 亚洲美女毛片| 99热国产免费| 婷婷综合伊人| 国产日韩欧美中文| 亚洲人成精品久久久| 久久色免费在线视频| 综合久久2023| 日韩高清不卡av| 白白色在线观看| 欧美成人精精品一区二区频| 色老头视频在线观看| 在线看不卡av| 超碰免费在线观看| 91九色02白丝porn| 国产小视频在线播放| 欧美性生交xxxxx久久久| 中文字幕免费在线观看| 亚洲已满18点击进入久久| www.成人精品免费网站青椒| 成人欧美一区二区三区白人| 欧美精品久久久久久久久25p| 91精品欧美久久久久久动漫| 中文在线免费| 3d动漫一区二区三区| 果冻天美麻豆一区二区国产| 色综合亚洲欧洲| 欧美一区二区三区爱爱| 免费观看在线午夜影视| 欧美一区二区三区在线电影| 国精产品一区| 亚洲第一中文字幕在线观看| 狠狠躁少妇一区二区三区| 日韩精品视频在线免费观看| 日韩欧美精品一区二区三区| 国产视频丨精品|在线观看| 日韩免费小视频| 欧美激情18p| gogogo高清在线观看一区二区| 国产在线播放不卡| 亚洲激情自拍| 亚洲成人动漫在线| 国产日韩欧美高清在线| 丝袜国产免费观看| 91精品蜜臀在线一区尤物| 欧美二三四区| 欧美亚洲视频在线观看| 欧美精品97| 青青草综合视频| 国产精品色噜噜| 日韩午夜影院| 国产视频一区在线| 人妖一区二区三区| 国产欧美欧洲| 国产美女一区二区三区| 欧美日韩国产精品激情在线播放| 中文字幕一区二区在线播放| 欧美777四色影视在线| 国产精品扒开腿爽爽爽视频| 日韩福利视频一区| 成人激情视频免费在线| 日韩精品欧美精品| 国产精品天天av精麻传媒| 成人午夜电影免费在线观看| 日韩电影免费网站| 高清色视频在线观看| 久久人91精品久久久久久不卡| 91蜜桃臀久久一区二区| 国产成人啪精品视频免费网| 欧美日韩久久精品| 91麻豆精品秘密入口| 欧美午夜精品电影| 免费一级网站| 亚洲丁香久久久| 精品国产一级毛片| 欧美日韩一区二区三区电影| 一区二区成人在线| 精品国产第一福利网站| 91亚洲国产精品| 久久久午夜电影| 丰乳肥臀在线| 91日本视频在线| 欧美国产日本韩| 芒果视频成人app| 91在线播放视频| 亚洲国产精品精华液ab| 欧美xxxx视频| 亚洲a成v人在线观看| 99久久婷婷国产| 青春草在线免费视频| 国产日韩欧美一二三区| 久久久久久亚洲综合| 久草在线资源站资源站| 国产精品嫩草影院一区二区| 国产jizzjizz一区二区| 国产原厂视频在线观看| 国产精品白嫩美女在线观看 | 欧美性色黄大片| 亚洲v天堂v手机在线| 国产二区视频在线| 欧美一二三区精品| 2023国产精品久久久精品双| 国产视频手机在线播放| 在线精品国产成人综合| 麻豆精品久久精品色综合| 国产视频精选在线| 国产日韩欧美日韩大片| 亚洲欧美另类在线| 7m精品国产导航在线| 欧美人与动牲交xxxxbbbb| 欧美成人伊人久久综合网| 欧美日韩国产成人精品| 香蕉视频在线观看网站| 欧美性资源免费| 国产精品欧美一区二区三区| 亚洲男女网站| 国产精品专区在线| 亚洲香蕉成视频在线观看| 久久99热狠狠色一区二区| 人交獸av完整版在线观看| 精品免费二区三区三区高中清不卡| 黑丝美女久久久| 久久久国产精品| 欧美zzoo| 国产91精品入口17c| 欧美午夜精品一区二区三区| 中文精品久久| 中文字幕乱码亚洲精品一区| 国产精品jk白丝蜜臀av小说| 毛片一级免费一级| 91久久精品视频| 欧美日韩一区二区精品| 亚洲女人av| 国产ts一区| 免费成人黄色| 国产经典第一页| 久久99精品久久久久久秒播放器| 精品国产伦一区二区三区观看体验| 国产99久久久国产精品潘金| 成人福利一区| 麻豆久久久久| 中文字幕大看焦在线看| 91av在线播放| 亚洲国产精品尤物yw在线观看| 欧美高清视频手机在在线| 人成在线免费网站| 免费观影入口看日本视频| 亚洲精品人成| 91香蕉视频在线下载| 日韩欧美中文字幕精品| 亚洲三级小视频| 日韩精品一区二区三区在线观看 | 国产精品成人一区二区三区夜夜夜 | 高清在线一区二区| 国产精品人人妻人人爽人人牛| 欧美成人精品xxx| 亚洲视频综合在线| 亚洲激情影院| 久久99国产精品二区高清软件| 成人免费淫片免费观看| 亚洲999一在线观看www| 欧美大片一区二区| 久久综合av免费| 婷婷亚洲五月色综合| 天堂8中文在线| 精品99在线视频| 91久久久久久久久久久久久| 日韩欧美在线观看一区二区三区| 成人高清视频在线| 成人av动漫在线观看| 狂野欧美激情性xxxx欧美| 欧美三级理论片| 久久精品午夜一区二区福利| 久久午夜a级毛片| 91精品91久久久中77777| 高清av一区二区| 91精品国产成人观看| 91精品国产66| 黄色片免费在线| 免费裸体美女网站| 久久99精品久久久久久秒播放器| 久久久精品网站| 欧美日韩不卡在线| 亚洲国产高清在线观看视频| 亚洲综合三区| 亚瑟一区二区三区四区| 色av手机在线| 日本三级电影网| 欧美与动交zoz0z| 成人久久久久久久| 神马久久桃色视频| 91精品国产91热久久久做人人 | 欧美天堂一区二区三区| 久久综合九色综合97_久久久| 欧美日韩四区|