-
-
Save jitunayak/4c66fb261edd9e650bea969e60de9d61 to your computer and use it in GitHub Desktop.
[Java Socket] java socket demo #java #socket
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class ServerDemo { | |
public void start() throws IOException{ | |
ServerSocket ss = new ServerSocket(5678); | |
ss.bind(local); | |
while (true) { | |
Socket socket = ss.accept(); | |
System.out.println("connection established"); | |
BufferedReader reader = getReader(socket); | |
System.out.println("from client: " + reader.readLine()); | |
BufferedWriter writer = getWriter(socket); | |
writer.write("hello client\n"); | |
writer.flush(); | |
} | |
} | |
public static BufferedReader getReader(Socket socket) throws IOException { | |
InputStream in = socket.getInputStream(); | |
return new BufferedReader(new InputStreamReader(in)); | |
} | |
public static BufferedWriter getWriter(Socket socket) throws IOException { | |
OutputStream out = socket.getOutputStream(); | |
return new BufferedWriter(new OutputStreamWriter(out)); | |
} | |
} | |
class ClientDemo { | |
public void start(String host, int port) { | |
// 初始化 socket | |
Socket socket = new Socket(); | |
try { | |
// 设置 socket 连接 | |
SocketAddress remote = new InetSocketAddress(host, port); | |
socket.setSoTimeout(5000); | |
socket.connect(remote); | |
// 发起请求 | |
BufferedWriter writer = ServerDemo.getWriter(socket); | |
System.out.println("Send to " + host); | |
writer.write("hello server\n"); | |
writer.flush(); | |
// 读取响应 | |
BufferedReader reader = ServerDemo.getReader(socket); | |
System.out.println("from server: " + reader.readLine()); | |
} catch (IOException e) { | |
e.printStackTrace(); | |
} finally { | |
try { | |
socket.close(); | |
} catch (IOException e) { | |
e.printStackTrace(); | |
} | |
} | |
} | |
} | |
public class SimpleSocket { | |
public static void main(String[] args) { | |
ServerDemo server = new ServerDemo(); | |
ServerDemo.start(); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment