您的位置:首页 > 理论基础 > 计算机网络

JAVA 网络编程学习第一篇TCP

2017-07-01 18:26 260 查看
       简单暴力,直接上服务器端以及客户端的代码,只要建立2个工程,然后先执行服务器端程序,再执行客户端程序,

就可以体会其中的乐趣,然后再细细品味。

1,服务器端程序如下:

import java.io.*;
import java.net.*;
public class ServerTest {
private BufferedReader reader;
private ServerSocket server;
private Socket socket;

boolean waitConnect()
{
try {
server = new ServerSocket(8992);
System.out.println("服务器套接字创建成功");
System.out.println("等待客户机的连接");
socket = server.accept();
System.out.println("连接成功");
return true;
} catch (Exception e) {
e.printStackTrace(); // 输出异常信息

}
return false;
}
void getMessage()
{
try{
reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
while (true)
{
if (reader.ready())
{
System.out.println("客户机:" + reader.readLine());
break;
}
}
if (reader != null) reader.close();
if (socket != null) socket.close();
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
ServerTest st = new ServerTest();
if(st.waitConnect())
st.getMessage();
}
}
其执行后显示:

服务器套接字创建成功
等待客户机的连接
连接成功


然后客户端程序如下:

import java.net.*;
import java.io.*;
public class MyClient {

public static void main(String []args)
{
Socket socket;
InetAddress ip;
String localIp;
try
{
ip =InetAddress.getLocalHost();
//String localName = ip.getHostName();
localIp = ip.getHostAddress();
socket = new Socket(localIp,8992);
System.out.println("链接成功");

PrintWriter writer = new PrintWriter(socket.getOutputStream(),true);
writer.println("send LOL gg to server\n");
socket.close();
}catch(Exception e)
{
e.printStackTrace();
}
}

}
运行客户端程序后结果:

链接成功


服务器端反映:

客户机:send LOL gg to server


现在是不是体会到其中的乐趣,客户端发送数据给服务器,服务器接收到客户端数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 网络编程 TCP UDP