TCP_服务端

来源:互联网 发布:matlab 无标度网络 编辑:程序博客网 时间:2024/06/06 01:29
package com.prosay.network;


import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;


public class TcpRecver {
/* 1.建立服务器端的serversocket服务,需要一个端口
2.服务端没有直接流的操作,而是通过serversocket.accept方法获取客户端socket对象,
3.操作接受到的socket对象。读取数据和写入数据。
4.关闭资源 (socket 、 serversocket)*/
public static void main(String[] args) throws IOException {
Map<String,String> studer = new HashMap();
studer.put("1000", "牧佑");
studer.put("101", "日上三竿包包包");
studer.put("102", "活着真好");
//1.建立服务器端的serversocket服务,需要一个端口
int port = 7100;
ServerSocket ser  = new ServerSocket(port);
//2.服务端没有直接流的操作,而是通过serversocket.accept方法获取客户端socket对象,
Socket sock = null;
DataInputStream dis =null;
DataOutputStream dos =null;
Socket accept =null;

accept= ser.accept();
//3.操作接受到的socket对象。读取数据和写入数据。
dis= new DataInputStream(new BufferedInputStream(accept.getInputStream()));
dos= new DataOutputStream(new BufferedOutputStream(accept.getOutputStream()));
String readUTF = dis.readUTF();
while(!"".equals(readUTF)) {

String userName = studer.get(readUTF);
if(null == userName) {
dos.writeUTF("对不起,你输入不对");
dos.flush();
} else {
dos.writeUTF(userName);
dos.flush();
}

}
ser.close();
accept.close();
dis.close();
dos.close();









}


}
原创粉丝点击