Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

JAVA NIO TCP SOCKET ÁÄÌìȺ·¢

ÒÔÇ°¶¼ÊÇÓÃÒ»°ãµÄsocket±à³Ì£¬ÓÃÏß³ÌÀ´¿ØÖÆ¡£×î½üͻȻÓÃnioÀ´×öЩ¶«Î÷¡£
nioµÄºÃ´¦ÎÒÀ´ËµÒ»Ï£ºµÚÒ»£¬¶Áд¶¼ÊÇ»ùÓÚ¿éµÄ£¬Ð§Âʸߡ£µÚ¶þ£¬Í¨¹ýÒýÈëselector,¼ò»¯ÁËÍøÂç±à³ÌÄ£ÐÍ£¬Òì²½·Ç×èÈû¡£
¼ÈÈ»ÓÐÕâô¶àºÃ´¦£¬ÄǾÍд¸öNIO TCPÍøÂçÁÄÌìÊÒÀ´Á·Á·ÊÖ°É¡£
ÒòΪûÓÐдgui£¬ÊÇ»ùÓÚ¿ØÖÆ̨µÄËùÒÔûд˽Á˵IJ¿·Ö£¬Ö»Ð´Á˹«¹²ÁÄÌìÊÒ¡££¨Æäʵ£¬¼ÈÈ»ÊÇ·þÎñÆ÷¶Ë¿ÉÒÔ·Ö·¢¸øËùÓÐÈË£¬·Ö·¢¸øÌض¨ÈËÒ²ÊǺÜÈÝÒ×ʵÏֵġ£
×¢Ò⣺ÕâÀïÖ»ÊÇΪÁËÁ·ÊÖ£¬ÁªÏµ·þÎñÆ÷¶Ë·Ö·¢ÏûÏ¢µ½¸÷¸ö¿Í»§¶Ë¡£TCP À´Ð´ÁÄÌìÊÒ£¬ÔÚÏÖʵÖÐÊDz»¿ÉÈ¡µÄ¡£IM¶¼ÊÇ»ùÓÚUDPÀ´Ð´µÄ¡£
ÏÈÉÏ´úÂë°É¡£
·þÎñÆ÷¶Ë´úÂë MySocketServer.java
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.kevin.nio;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.util.Date;
import java.util.Iterator;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
 *
 * @author kevin
 */
public class MySocketServer implements Runnable{
  
    private boolean running;
   
    private Selector selector;
    String writeMsg;
    StringBuffer sb=new StringBuffer();
    SelectionKey ssckey;
    public MySocketServer(){
       
        running=true;
       
    }
    public void init(){
        try {
            selector = Selector.open();
            ServerSocketChannel ssc = ServerSocketChannel.open();
         &nbs


Ïà¹ØÎĵµ£º

´Ó½ñÈÕÆðÎÒ¿ªÊ¼ÖØÐÂÊ°ÆðJAVAµÄÆìÖÄ£¬×£¸£ÎÒ°É£¡£¡£¡

      ½ñÌìÊǸöºÃÈÕ×Ó£¬ÎªÊ²Ã´Õâô˵ÄØ£¿ÒòΪ½ñÌì½á»éµÄÌرð¶à£¬ÕæµÄÏ൱¶à¡£Ö»ÒªÊǸöÓÐÍ·ÓÐÁ³µÄ·¹µê¶¼»áÓÐÐÂÈËÔÚÄÇÀïÍê³É×Ô¼º×îÃÀÀöµÄ»ØÒä¡£µ«ÎÒµÄÐÄÇéÈ´ÈçÇ°Á½ÈÕµÄÁ¬ÌìÓêÒ»Ñù×ÜÊÇÒõÒõµÄÔÚÏÂÓꡣΪÁËÄÜÈÃ×Ô¼ºÔçÈÕ×ß³öÒõö²£¬ÈÃ×Ô¼ºÄܹ»ÔÙ´Î×öÖ÷×Ô¼ºµÄÈËÉú£¬½ñÌìÎÒ¾ö¶¨Òª»Øµ½ÎÒרҵ¿ª·¢µÄµÀ·ÉÏÀ´£ ......

Java¿ª·¢·½ÃæµÄÊõÓï JavaѧϰµÚÒ»²½

        Java¿ª·¢Æ½Ì¨µÄÖÖÀàºÜ¶à£¬ÔÚÕâƪÎÄÕÂÖÐÎÒÖ÷ÒªÒÔJ2SEΪÀý×Ó¡£J2SE¼¸ºõÊÇ¿ª·¢ËùÓÐJavaÓ¦ÓóÌÐòµÄ±Ø±¸¡£ËüÖ÷ÒªÊÇÓÉÒ»¸öcompiler(±àÒëÆ÷)£¬Ò»¸öÔËÐл·¾³(runtime environment),ºÍÒ»¸öºËÐĵÄAPIËù¹¹³É¡£ÎÒÃÇÒªÔÙ´ÎҪǿµ÷µÄÊÇ£¬ÄúËù±àдӦÓóÌÐò²¢²»ÊÇÖ±½ÓÔÚÄúµÄ±¾µØ²Ù×÷ϵͳÉÏÖ´ÐÐµÄ ......

¹ØÓÚjavaµÄclasspathÎÊÌâ


package¡¢import
µÄÏà¹ØÎÊÌâÊÇjavaÖеÄÒ»¸ö²»´ó²»Ð¡µÄÎÊÌ⣬µ«classpathÎÊÌâÈ´ÊÇjavaµÄÒ»¸öÖøÃûµÄÄÑÌâ¡£½ñÍíµÃÏÐÑо¿ÁËһϣ¬ÔÚÕâÀォÎÒµÄÑо¿³É¹û¸ú¸÷λ
ÅóÓÑ·ÖÏíһϡ£ÓÉÓÚͬ°üµÄÇé¿öºÜ¼òµ¥£¬ËùÒÔÕâÀï¾Í²»ÌÖÂÛͬ°üÇé¿ö£¬Ö»ÌÖÂÛ²»Í¬°üºÍ²»Í¬Â·¾¶µÄÇé¿ö¡£ÎªÁËÄÜÈöÁÕ߸üÈÝÒ×Àí½â£¬ÎÒÕâÀïÒÔ¾ÙÀýµÄ·½Ê½À´ËµÃ÷ÎÊ
Ìâ¡£
¡ ......

JavaÓïÑÔѧУµÄΣÏÕÐÔ£¨ÒëÎÄ£©


¾õµÃÁôÑÔºÜÓеÀÀí£¬ÎÄÕºÜÕÜÀí£¬Ò»²¢×ªÔØ ½¨Òé¶ÁÕß¿´Ô­ÎĵØÖ·
×÷Õߣº ÈîÒ»·å
ÈÕÆÚ£º 2008Äê12Ô 7ÈÕ
ÏÂÃæµÄÎÄÕÂÊÇMore Joel on SoftwareÒ»ÊéµÄµÚ8ƪ¡£
ÎÒ¾õµÃ·­ÒëÄѶȺܴó£¬ÕûÕûÁ½¸ö¹¤×÷ÈÕ£¬Ã¿Ìì8СʱÒÔÉÏ£¬²ÅÒë³öÁË5000×Ö¡£³ýÁËJoel´óÁ¿Ê¹ÓÃÙµÓÁíÒ»¸öÔ­ÒòÊÇÔ­ÎÄÉæ¼°"±à³ÌÔ­Àí"£¬ºÃ¶à¶«Î÷ÎÒ¸ù±¾²»¶®¡£Ï£ ......

Java theory and practice

1. Multiply-Thread
Locks offer two primary features: mutual exclusion and visibility. Mutual exclusion means only one thread at a time may hold a given lock, so only one thread at a time will be using the shared data. Visibility is to ensure that changes made to shared data prior to releasing a lo ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ