av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

利用Socket進行Java網絡編程(二)

瀏覽:123日期:2024-06-21 10:40:54
內容: 出自:天極網 郗旻 2002年11月11日 09:28 二、建立客戶端代碼相比服務器端,客戶端要簡單一些,客戶端只需用服務器所在機器的ip以及服務器的端口作為參數創建一個Socket對象。得到這個對象后,就可以用'建立服務器'部分介紹的方法實現數據的輸入和輸出。Socket socket = new Socket('168.160.12.42',9998);in = new BufferedReader(new InputStreamReader(socket.getInputStream()));out = new PrintWriter(socket.getOutputStream(),true); 以上的程序代碼建立了一個Socket對象,這個對象連接到ip地址為168.160.12.42的主機上、端口為9998的服務器對象。并且建立了輸入流和輸出流,分別對應服務器的輸出和客戶端的寫入。三、建立用戶界面讀者可以根據自己的喜好建立自己的用戶界面,這不是本文的重點。經過以上三個步驟,就可以建立一個比較簡單的對話程序。但是,為了使這個程序更加完善,應進行以下幾個改進:一、現在服務器只能服務一個客戶,也就是單線程的。可以將它改進為多線程服務器。try{ file://建立服務器 ServerSocket server = new ServerSocket(9998); int i=1; for(;;) {Socket incoming = server.accept();new ServerThread(incoming,i).start();i++; }}catch (IOException ex){ ex.printStackTrace(); } 循環檢測是否有客戶連接到服務器上,如果有,則創建一個線程來服務這個客戶,這個線程的名稱是ServerThread,這個類擴展了Thread類,它的編寫方法與前述的服務器的寫法相同。二、為了可以隨時得到對方傳送過來的消息,可以在服務器以及客戶端各建立一個獨立的線程來察看輸入流,如果輸入流中有輸入,則可以即時顯示出來。代碼如下:new Thread(){ public void run() {try{  while(true) {checkInput();sleep(1000);//每1000毫秒檢測一次 }}catch (InterruptedException ex) { }catch(IOException ex) {} }}.start();其中的checkInput()方法為private void checkInput() throws IOException{ String line; if((line=in.readLine())!=null) file://檢測輸入流中是否有新的數據t.setPartner(line); file://將數據流中的消息顯示出來} 通過以上改進,程序就可以比較好的運行了。 Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽: Java
相關文章:
主站蜘蛛池模板: 欧美18免费视频 | 自拍偷拍欧美日韩 | 日本毛片在线观看 | 久草免费福利 | 免费在线观看黄色片 | 欧美视频三区 | 少妇一级淫片免费看 | 久久午夜精品 | 免费成人在线看 | 日韩美女视频 | 午夜视频在线免费观看 | 欧美成人一级 | 日韩免费一区二区 | 久久久夜夜夜 | 激情久久久久 | 九九色综合 | 日本黄色中文字幕 | 中文字幕av一区二区三区 | 超碰在线99 | 国产一级特黄 | 中文字幕一区二区三区在线观看 | 欧美三级 欧美一级 | 国产a级大片 | 怡红院久久 | www.啪啪| av片免费 | 九九视频免费观看 | 国产一级免费视频 | 三级黄色片网站 | 欧美综合在线视频 | 欧美又大又硬又粗bbbbb | 亚洲在线免费视频 | 欧美黄色一级视频 | 午夜视频免费观看 | 日韩久久一区 | 中文字幕欧美激情 | 欧美日韩中文字幕在线 | 欧美日韩成人在线观看 | 97精品国产97久久久久久免费 | 中文字幕久久久 | 九九久久精品视频 |