日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
JavaNIO(異步IO)Socket通信例子

服務(wù)器代碼:

10年積累的做網(wǎng)站、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有虹口免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

 
 
 
  1. import java.net.*; 
  2. import java.nio.*; 
  3. import java.nio.channels.*; 
  4. import java.util.*; 
  5. public class server 
  6. ServerSocketChannel ssc ; 
  7. public void start() 
  8. try 
  9. Selector selector = Selector.open(); 
  10. ServerSocketChannel ssc=ServerSocketChannel.open(); 
  11. ssc.configureBlocking(false); 
  12. ServerSocket ss=ssc.socket(); 
  13. InetSocketAddress address = new InetSocketAddress(55555); 
  14. ss.bind(address); 
  15. ssc.register(selector, SelectionKey.OP_ACCEPT); 
  16. System.out.println("端口注冊完畢!"); 
  17. while(true) 
  18. selector.select(); 
  19. Set selectionKeys=selector.selectedKeys(); 
  20. Iterator iter=selectionKeys.iterator(); 
  21. ByteBuffer echoBuffer=ByteBuffer.allocate(20); 
  22. SocketChannel sc; 
  23. while(iter.hasNext()) 
  24. SelectionKey key=iter.next(); 
  25. if((key.readyOps()&SelectionKey.OP_ACCEPT)==SelectionKey.OP_ACCEPT) 
  26. ServerSocketChannel subssc=(ServerSocketChannel)key.channel(); 
  27. sc=subssc.accept(); 
  28. sc.configureBlocking(false); 
  29. sc.register(selector, SelectionKey.OP_READ); 
  30. iter.remove(); 
  31. System.out.println("有新連接:"+sc); 
  32. else if((key.readyOps()&SelectionKey.OP_READ)==SelectionKey.OP_READ) 
  33. sc=(SocketChannel) key.channel(); 
  34. while(true) 
  35. echoBuffer.clear(); 
  36. int a; 
  37. try 
  38. a=sc.read(echoBuffer); 
  39. catch(Exception e) 
  40. e.printStackTrace(); 
  41. break; 
  42. if(a==-1) break; 
  43. if(a>0) 
  44. byte[] b=echoBuffer.array(); 
  45. System.out.println("接收數(shù)據(jù): "+new String(b)); 
  46. echoBuffer.flip(); 
  47. sc.write(echoBuffer); 
  48. System.out.println("返回數(shù)據(jù): "+new String(b)); 
  49. sc.close(); 
  50. System.out.println("連接結(jié)束"); 
  51. System.out.println("============================="); 
  52. iter.remove(); 
  53. catch (Exception e) 
  54. e.printStackTrace(); 

客戶端代碼:

 
 
 
  1. import java.net.*; 
  2. import java.nio.*; 
  3. import java.nio.channels.*; 
  4. public class client 
  5. public void start() 
  6. try 
  7. SocketAddress address = new InetSocketAddress("localhost",55555); 
  8. SocketChannel client=SocketChannel.open(address); 
  9. client.configureBlocking(false); 
  10. String a="asdasdasdasddffasfas"; 
  11. ByteBuffer buffer=ByteBuffer.allocate(20); 
  12. buffer.put(a.getBytes()); 
  13. buffer.clear(); 
  14. int d=client.write(buffer); 
  15. System.out.println("發(fā)送數(shù)據(jù): "+new String(buffer.array())); 
  16. while(true) 
  17. buffer.flip(); 
  18. int i=client.read(buffer); 
  19. if(i>0) 
  20. byte[] b=buffer.array(); 
  21. System.out.println("接收數(shù)據(jù): "+new String(b)); 
  22. client.close(); 
  23. System.out.println("連接關(guān)閉!"); 
  24. break; 
  25. catch(Exception e) 
  26. e.printStackTrace(); 

本文題目:JavaNIO(異步IO)Socket通信例子
標(biāo)題鏈接:http://www.dlmjj.cn/article/coiodpp.html