One minute
Socket通信TCP基于java开发
- 服务器创建一个Server类,等待客户端的连接,:
核心代码:
ServerSocket serverG1 = new ServerSocket(6786);
//第一组服务器在6786port开启ServerSocket
While(true){ Socket socketG1 = serverG1.accept(); }
//接收客户端连接
2.创建一个Client类,连接服务器
Socket ClientSocketG1 = new Socket(“ServerIPaddr”, 6786);
** //使用socket 连接服务器的6786端口,ServerIPaddr 是服务器的IP地址**
完整代码如下:
sever服务端
package lan_1;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) throws Exception{
String ClientSentrnce;//2. 为了能够接收发送数据,可以使用BufferedReader和DataOutputStream进行输入流和输
String capitalizedSentrnce;
ServerSocket serverG1 = new ServerSocket(6786);
System.out.println(“连接成功”);
while(true){
Socket connectionSocket=serverG1.accept();
BufferedReader inFormClient =new BufferedReader(new InputStreamReader(connectionSocket.getInputStream()));
DataOutputStream outToClient =new DataOutputStream(connectionSocket.getOutputStream());
ClientSentrnce =inFormClient.readLine();
System.out.print(“FROM Client:”+ ClientSentrnce+”\n”);
capitalizedSentrnce=ClientSentrnce.toUpperCase()+’\n’;
outToClient.writeBytes(capitalizedSentrnce);
}
}
}
client 客户端:
package lan_1;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.Socket;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class Client {
public static void main(String[] args) throws Exception{
String sentence;
String modifiedSentence;
Socket ClientSocketG1=new Socket(“10.4.21.27”,6786);
BufferedReader inFromUser=new BufferedReader(new InputStreamReader(System.in));
DataOutputStream outToServer=new DataOutputStream(ClientSocketG1.getOutputStream());
BufferedReader inFromServer=new BufferedReader(new InputStreamReader(ClientSocketG1.getInputStream()));
sentence=inFromUser.readLine();
outToServer.writeBytes(sentence+’\n’);
modifiedSentence=inFromServer.readLine();
System.out.print(“FROM Server: “+ modifiedSentence+”\n”);
}
}
由于是使用eclipse开发所以代码没有实现关闭端口,请一定要记住要自己写出关闭端口的代码防止到时连接出错。
155 Words
2019-11-19 00:00