Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit c7d2d3e

Browse files
author
usmanyousaaf
committed
provide readability and maintainability~
0 parents commit c7d2d3e

File tree

4 files changed

+135
-0
lines changed

4 files changed

+135
-0
lines changed

‎Client1.java‎

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package multiThread;
2+
3+
import java.net.*;
4+
import java.io.*;
5+
import java.util.Scanner;
6+
7+
/**
8+
* This program demonstrates a simple TCP/IP socket client that reads input
9+
* from the user and prints echoed message from the server.
10+
*
11+
*/
12+
public class Client1 {
13+
public static void main(String[] args) {
14+
if (args.length < 2) return;
15+
String hostname = args[0];
16+
int port = Integer.parseInt(args[1]);
17+
try (Socket socket = new Socket(hostname, port)) {
18+
OutputStream output = socket.getOutputStream();
19+
PrintWriter writer = new PrintWriter(output, true);
20+
Console console = System.console();
21+
String text;
22+
do {
23+
24+
System.out.println("enter text");
25+
Scanner s =new Scanner(System.in);
26+
text=s.nextLine();
27+
writer.println(text);
28+
InputStream input = socket.getInputStream();
29+
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
30+
String time = reader.readLine();
31+
System.out.println(time);
32+
} while (!text.equals("bye"));
33+
socket.close();
34+
} catch (UnknownHostException ex) {
35+
System.out.println("Server not found: " + ex.getMessage());
36+
} catch (IOException ex) {
37+
System.out.println("I/O error: " + ex.getMessage());
38+
}
39+
}
40+
}

‎Client2.java‎

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
package multiThread;
2+
3+
import java.net.*;
4+
import java.io.*;
5+
import java.util.Scanner;
6+
7+
/**
8+
* This program demonstrates a simple TCP/IP socket client that reads input
9+
* from the user and prints echoed message from the server.
10+
*
11+
*/
12+
public class Client2 {
13+
public static void main(String[] args) {
14+
if (args.length < 2) return;
15+
String hostname = args[0];
16+
int port = Integer.parseInt(args[1]);
17+
try (Socket socket = new Socket(hostname, port)) {
18+
OutputStream output = socket.getOutputStream();
19+
PrintWriter writer = new PrintWriter(output, true);
20+
Console console = System.console();
21+
String text;
22+
do {
23+
24+
System.out.println("enter text");
25+
Scanner s =new Scanner(System.in);
26+
text=s.nextLine();
27+
writer.println(text);
28+
InputStream input = socket.getInputStream();
29+
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
30+
String time = reader.readLine();
31+
System.out.println(time);
32+
} while (!text.equals("bye"));
33+
socket.close();
34+
} catch (UnknownHostException ex) {
35+
System.out.println("Server not found: " + ex.getMessage());
36+
} catch (IOException ex) {
37+
System.out.println("I/O error: " + ex.getMessage());
38+
}
39+
}
40+
}

‎Server.java‎

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
package multiThread;
2+
3+
import java.io.*;
4+
import java.net.*;
5+
6+
public class Server {
7+
public static void main(String[] args) {
8+
if (args.length < 1) return;
9+
int port = Integer.parseInt(args[0]);
10+
try (ServerSocket serverSocket = new ServerSocket(port)) {
11+
System.out.println("Server is listening on port " + port);
12+
while (true) {
13+
Socket socket = serverSocket.accept();
14+
System.out.println("New client connected");
15+
new ServerThread(socket).start();
16+
}
17+
} catch (IOException ex) {
18+
System.out.println("Server exception: " + ex.getMessage());
19+
ex.printStackTrace();
20+
}
21+
}
22+
}

‎ServerThread.java‎

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package multiThread;
2+
3+
import java.io.*;
4+
import java.net.*;
5+
6+
7+
public class ServerThread extends Thread {
8+
private Socket socket;
9+
10+
public ServerThread(Socket socket) {
11+
this.socket = socket;
12+
}
13+
14+
public void run() {
15+
try {
16+
InputStream input = socket.getInputStream();
17+
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
18+
OutputStream output = socket.getOutputStream();
19+
PrintWriter writer = new PrintWriter(output, true);
20+
String text;
21+
do {
22+
text = reader.readLine();
23+
String reverseText = new StringBuilder(text).reverse().toString();
24+
writer.println("Server: " + reverseText);
25+
} while (!text.equals("bye"));
26+
socket.close();
27+
System.out.println("ok");
28+
} catch (IOException ex) {
29+
System.out.println("Server exception: " + ex.getMessage());
30+
ex.printStackTrace();
31+
}
32+
}
33+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /