TCP协议:传输控制协议 ,应用于运输层 客户端代码--发送请求: import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class TCPClientDemo {
public static void main(String[] args) throws UnknownHostException, IOException {
// TODO Auto-generated method stub
//1.建立TCP连接
String ip='10.105.53.65'; //服务器端ip地址
int port=10002; //端口号
Socket sck=new Socket(ip,port);
//2.传输内容
String content='这是一个java模拟客户端';
byte[] bstream=content.getBytes('GBK'); //转化为字节流
OutputStream os=sck.getOutputStream(); //输出流
os.write(bstream);
//3.关闭连接
sck.close();
}
} 服务器端---接收请求
import java.io.DataInputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class TCPServerDemo {
private ServerSocket serverSocket;
private DataInputStream dataInputStream;
public void startServer(){
Socket socket =null;
try {
serverSocket = new ServerSocket(10003);
socket = serverSocket.accept();
dataInputStream = new DataInputStream(socket.getInputStream());
GetMessageFromClient();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(socket!=null){
try{
socket.close();
}catch(IOException e) {
e.printStackTrace();
}
}
}
}
private void GetMessageFromClient(){
try {
//获取消息的长度
int length = dataInputStream.read();
//获取消息
byte[] body = new byte[length];
dataInputStream.read(body);
String message = new String(body);
System.out.println('客户端说:' message);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
TCPServerDemo server = new TCPServerDemo();
server.startServer();
}
}
|
|
来自: liang1234_ > 《协议》