⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 send.java

📁 短信发送
💻 JAVA
字号:
/**
 * Created at Nov 29, 2008
 */
package com.jdev.net.samples;

import java.net.InetSocketAddress;
import java.nio.ByteBuffer;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.SocketChannel;
import java.util.Set;


/**
 * <p>Title: Send</p>
 * <p>Description: </p>
 * @author Lawrence
 * @version 
 */
public class Send {   
	  
    public static void main(String[] args) throws Exception {   
        SocketChannel socketChannel = SocketChannel.open();   
        ByteBuffer buffer = ByteBuffer.allocate(1024);   
        Selector selector = Selector.open();   
        buffer.put("我是中国人,我爱我的祖国,hadeslee".getBytes());   
        buffer.flip();   
  
        socketChannel.configureBlocking(false);   
        socketChannel.register(selector, SelectionKey.OP_CONNECT   
                | SelectionKey.OP_READ | SelectionKey.OP_WRITE);   
        socketChannel.connect(new InetSocketAddress("127.0.0.1", 6188));   
        while (!socketChannel.finishConnect())   
            ;   
//        socketChannel.write(buffer);   
        System.out.println("进入循环");   
        Thread.sleep(1000);   
        int sum = selector.select();   
        while (sum > 0) {   
            Thread.sleep(500);   
            System.out.println("终于大于0了");   
            Set<SelectionKey> set = selector.selectedKeys();   
            System.out.println("大小是:" + set.size());   
            for (SelectionKey key : set) {   
                int ops = key.readyOps();   
                if ((ops & SelectionKey.OP_CONNECT) == SelectionKey.OP_CONNECT) {   
                    socketChannel.write(buffer);   
                    System.out.println("连接成功");   
                }   
                if ((ops & SelectionKey.OP_READ) == SelectionKey.OP_READ) {   
                    System.out.println(" 收到东西");                       
                    buffer.flip();   
                    System.out.println("收到的是:"  
                            + new String(buffer.array(), 0, buffer.limit()));   
                       
                    socketChannel.write(buffer);   
  
                }   
            }   
            selector.selectedKeys().clear();   
        }   
    }   
}  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -