Skip to content

Instantly share code, notes, and snippets.

Created May 27, 2017 18:40
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/344d5d4f000165e5d321b168d104f8f1 to your computer and use it in GitHub Desktop.
Save anonymous/344d5d4f000165e5d321b168d104f8f1 to your computer and use it in GitHub Desktop.
Very simple java client server
// *******SERVER*******
import java.net.*;
public class TempServer {
public static final int TCP_PORT = 9000;
public static void main(String[] args) {
try {
int clientCounter = 0;
ServerSocket ss = new ServerSocket(TCP_PORT);
System.out.println("Server running...");
while (true) {
Socket sock = ss.accept();
System.out.println("Client accepted: "
+ (++clientCounter));
ServerThread st = new ServerThread(sock, clientCounter);
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
//********SERVER THREAD**********
import java.io.*;
import java.net.*;
import java.util.Random;
public class ServerThread extends Thread {
public ServerThread(Socket sock, int value) {
this.sock = sock;
this.value = value;
try {
in = new BufferedReader(
new InputStreamReader(
sock.getInputStream()));
out = new PrintWriter(
new BufferedWriter(
new OutputStreamWriter(
sock.getOutputStream())), true); // <<<<<<<< THIS RIGHT HERE! WHAT IS THAT BOOLEAN ARGUEMENT DOING HERE??
} catch (Exception ex) {
ex.printStackTrace();
}
start();
}
public void run() {
try {
String request;
Random rand = new Random();
while (!"END".equals(request = in.readLine())) {
System.out.println("[Client " + value + " ]: " + request);
out.println("Temperature for " + request + " is " + (rand.nextInt(70) - 20));
}
in.close();
out.close();
sock.close();
System.out.println("[Client " + value + "] is offline");
} catch (Exception ex) {
ex.printStackTrace();
}
}
private Socket sock;
private int value;
private BufferedReader in;
private PrintWriter out;
}
// *******CLIENT********
import java.io.*;
import java.net.*;
import java.util.Scanner;
public class TempClient {
public static final int TCP_PORT = 9000;
public static void main(String[] args) {
try {
InetAddress addr = InetAddress.getByName("127.0.0.1");
Socket sock = new Socket(addr, TCP_PORT);
BufferedReader in = new BufferedReader(new InputStreamReader(
sock.getInputStream()));
PrintWriter out = new PrintWriter(
new BufferedWriter(new OutputStreamWriter(
sock.getOutputStream())), true); // <<<<<<<AGAIN, WHAT DOES THIS "TRUE" MEANS?
Scanner scan = new Scanner(System.in);
String msg = "";
while (!"END".equals(msg)) {
msg = scan.nextLine();
out.println(msg);
if (!"END".equals(msg)) {
String response = in.readLine();
System.out.println("[Server]: " + response);
}
}
in.close();
out.close();
sock.close();
} catch (UnknownHostException e1) {
e1.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment