Last active
January 22, 2021 14:28
-
-
Save daovietanh190499/e8cf4d24288313f3f00c08dbe9f64167 to your computer and use it in GitHub Desktop.
This file contains 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
import java.io.IOException; | |
import java.io.BufferedReader; | |
import java.io.PrintWriter; | |
import java.io.InputStreamReader; | |
import java.net.InetAddress; | |
import java.net.Socket; | |
import java.net.UnknownHostException; | |
public class Client { | |
public static void main(String[] args) throws UnknownHostException, IOException, ClassNotFoundException, InterruptedException { | |
InetAddress host = InetAddress.getLocalHost(); | |
int serverPort = 9090; | |
Socket serverConnection = new Socket(host.getHostName(), serverPort); | |
BufferedReader receiver = new BufferedReader(new InputStreamReader(serverConnection.getInputStream())); | |
PrintWriter sender = new PrintWriter(serverConnection.getOutputStream(), true); | |
while(true) { | |
sender.println("10 20 30 40"); | |
String response = receiver.readLine(); | |
System.out.println("Response: " + response); | |
} | |
} | |
} |
This file contains 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
import java.io.IOException; | |
import java.io.BufferedReader; | |
import java.io.PrintWriter; | |
import java.io.InputStreamReader; | |
import java.lang.ClassNotFoundException; | |
import java.net.ServerSocket; | |
import java.net.Socket; | |
import java.util.*; | |
public class Server { | |
public static void main(String[] args) throws IOException, ClassNotFoundException { | |
ServerSocket server = new ServerSocket(9090); | |
try { | |
while (true) { | |
Socket clientConnection = server.accept(); | |
ClientHandler t = new ClientHandler(clientConnection); | |
t.start(); | |
} | |
} catch (Exception e) { | |
server.close(); | |
} | |
} | |
} | |
class ClientHandler extends Thread { | |
private Socket s; | |
private BufferedReader receiver; | |
private PrintWriter sender; | |
public ClientHandler(Socket s) { | |
this.s = s; | |
try { | |
this.receiver = new BufferedReader(new InputStreamReader(this.s.getInputStream())); | |
this.sender = new PrintWriter(this.s.getOutputStream(), true); | |
} catch (Exception e) { | |
e.printStackTrace(); | |
} | |
} | |
@Override | |
public void run() { | |
while (true) { | |
try { | |
String request = this.receiver.readLine(); | |
System.out.println("Request: " + request); | |
String[] nums = request.split(" "); | |
int sum = 0; | |
for(int i = 0; i < nums.length; i ++) { | |
sum += Integer.parseInt(nums[i]); | |
} | |
String response = String.valueOf(sum); | |
this.sender.println(response); | |
} catch (Exception e) { | |
break; | |
} | |
} | |
try { | |
this.receiver.close(); | |
this.sender.close(); | |
}catch(IOException e){ | |
e.printStackTrace(); | |
} | |
} | |
} |
This file contains 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
import java.io.IOException; | |
import java.io.BufferedReader; | |
import java.io.PrintWriter; | |
import java.io.InputStreamReader; | |
import java.lang.ClassNotFoundException; | |
import java.net.ServerSocket; | |
import java.net.Socket; | |
public class Server { | |
public static void main(String[] args) throws IOException, ClassNotFoundException { | |
ServerSocket server = new ServerSocket(9090); | |
Socket clientConnection = server.accept(); | |
BufferedReader receiver = new BufferedReader(new InputStreamReader(clientConnection.getInputStream())); | |
PrintWriter sender = new PrintWriter(clientConnection.getOutputStream(), true); | |
try { | |
while(true) { | |
String request = receiver.readLine(); | |
String[] nums = request.split(" "); | |
int sum = 0; | |
for(int i = 0; i < nums.length; i ++) { | |
sum += Integer.parseInt(nums[i]); | |
} | |
String response = String.valueOf(sum); | |
sender.println(response); | |
} | |
} catch (Exception e) { | |
server.close(); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
javac Client.java && java Client để chạy client