Socket网络编程

来源:互联网 发布:美微网络香蕉视频tv 编辑:程序博客网 时间:2024/06/01 18:09

服务器端创建 ServerSocket对象管理
ServerSocket s = new ServerSocket(端口号);
有一个监听客户端请求的方法:Socket accept(); 如果有客户端Socket1连接,那么将返回一个与客户端Socket对应的Socket2
ServerSocket s = new ServerSocket(端口号);
While(true){
//如果没有客户端Socket发送连接请求,那么该方法将一直处于等待状态
Socket a = s.accept();
//接下来就可以进行Socket通信了
例如下面实现服务器与客户端简单的连接

package serversocket;import java.io.IOException;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;import java.util.Scanner;public class Server {    public static void main(String[] args) throws IOException {        ServerSocket ss = new ServerSocket(30013);        while(true) {            Scanner sc = new Scanner(System.in);            Socket s = ss.accept();            PrintStream ps = new PrintStream(s.getOutputStream());              ps.println(System.currentTimeMillis()+"这里是服务器");            while(sc.hasNextLine()) {                ps.println(sc.nextLine());            }            sc.close();            ps.close();            s.close();        }    }}package serversocket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.Socket;public class Client {    public static void main(String[] args) {        try {            Socket socket = new Socket("127.0.0.1",30013);            BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream()));        System.out.println("来自服务器127.0.0.1,端口号为30000的数据");        String s = null;        while((s=br.readLine())!=null) {            System.out.println(s);        }        br.close();        socket.close();    } catch (IOException e) {        e.printStackTrace();    }}
原创粉丝点击