Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.*;
- import java.net.*;
- class ClientSystem
- {
- public static void main(String[] args)
- {
- String hostname = "127.0.0.1";
- int port = 1234;
- Socket clientsocket = null;
- DataOutputStream output =null;
- BufferedReader input = null;
- try
- {
- clientsocket = new Socket(hostname,port);
- output = new DataOutputStream(clientsocket.getOutputStream());
- input = new BufferedReader(new InputStreamReader(clientsocket.getInputStream()));
- }
- catch(Exception e)
- {
- System.out.println("Error occured"+e);
- }
- try
- {
- while(true)
- {
- System.out.println("Enter input string ('exit' to terminate connection): ");
- BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
- String inputstring = br.readLine();
- output.writeBytes(inputstring+"n");
- //int n = Integer.parseInt(inputstring);
- if(inputstring.equals("exit"))
- break;
- String response = input.readLine();
- System.out.println("Reversed string is: "+response);
- output.close();
- input.close();
- clientsocket.close();
- }
- }
- catch(Exception e)
- {
- System.out.println("Error occured."+e);
- }
- }
- }
- import java.io.*;
- import java.net.*;
- public class ServerSystem
- {
- ServerSocket server = null;
- Socket clientsocket = null;
- int numOfConnections = 0, port;
- public ServerSystem(int port)
- {
- this.port = port;
- }
- public static void main(String[] args)
- {
- int port = 1234;
- ServerSystem ss = new ServerSystem(port);
- ss.startServer();
- }
- public void startServer()
- {
- try
- {
- server = new ServerSocket(port);
- }
- catch(Exception e)
- {
- System.out.println("Error occured."+e);
- }
- System.out.println("Server has started. Ready to accept connections.");
- while(true)
- {
- try
- {
- clientsocket = server.accept();
- numOfConnections++;
- ServerConnection sc = new ServerConnection(clientsocket, numOfConnections, this);
- new Thread(sc).start();
- }
- catch(Exception e)
- {
- System.out.println("Error occured."+e);
- }
- }
- }
- public void stopServer()
- {
- System.out.println("Terminating connection");
- System.exit(0);
- }
- }
- class ServerConnection extends Thread
- {
- BufferedReader br;
- PrintStream ps;
- Socket clientsocket;
- int id;
- ServerSystem ss;
- public ServerConnection(Socket clientsocket, int numOfConnections, ServerSystem ss)
- {
- this.clientsocket = clientsocket;
- id = numOfConnections;
- this.ss = ss;
- System.out.println("Connection "+id+" established with "+clientsocket);
- try
- {
- br = new BufferedReader(new InputStreamReader(clientsocket.getInputStream()));
- ps = new PrintStream(clientsocket.getOutputStream());
- }
- catch(Exception e)
- {
- System.out.println("Error occured."+e);
- }
- }
- public void run()
- {
- String line, reversedstring = "";
- try
- {
- boolean stopserver = false;
- while(true)
- {
- line = br.readLine();
- System.out.println("Received string: "+line+" from connection "+id);
- //long n = Long.parseLong(line.trim());
- if(line.equals("exit"))
- {
- stopserver = true;
- break;
- }
- else
- {
- int len = line.length();
- for (int i=len-1; i>=0; i--)
- reversedstring = reversedstring + line.charAt(i);
- ps.println(""+reversedstring);
- }
- }
- System.out.println("Connection "+id+" is closed.");
- br.close();
- ps.close();
- clientsocket.close();
- if(stopserver)
- ss.stopServer();
- }
- catch(Exception e)
- {
- System.out.println("Error occured."+e);
- }
- }
- }
- Enter input string ('exit' to terminate connection):
- usa
- Reversed string is: asu
- Enter input string ('exit' to terminate connection):
- usa
- Error occured.java.net.SocketException: Socket closed
- Server has started. Ready to accept connections.
- Connection 1 established with Socket[addr=/127.0.0.1,port=3272,localport=1234]
- Received string: usa from connection 1
- Received string: null from connection 1
- Error occured.java.lang.NullPointerException
- output.close();
- input.close();
- clientsocket.close();
- try {
- while(true) {
- // client code here
- }
- } catch (Exception e) {
- e.printStackTrace(); // notice this line. Will save you a lot of time!
- } finally {
- output.close(); //close resources here!
- input.close();
- clientsocket.close();
- }
- LOG.error("Unexpected error when deionizing the flux capacitor",e);
- e.printStackTrace();
- else
- {
- int len = line.length();
- reversedString=""; //this line erases the previous content of the reversed string
- for (int i=len-1; i>=0; i--) { //always use brackets!!!
- reversedstring = reversedstring + line.charAt(i);
- }
- ps.println(""+reversedstring);
- }
- while(true)
- {
- line = br.readLine();
- System.out.println("Received string: "+line+" from connection "+id);
- if(line.equals("exit"))
- {
- break; //just stop this connection, don't kill server
- }
- else if(line.equals("stop"))
- {
- stopserver = true; //stop server too
- break;
- }
- else
- {
- int len = line.length();
- for (int i=len-1; i>=0; i--) {
- reversedstring = reversedstring + line.charAt(i);
- }
- ps.println(""+reversedstring);
- }
- }
- output.close();
- input.close();
- clientsocket.close();
- } finally {
- output.close();
- input.close();
- clientsocket.close();
- }
- } finally {
- br.close();
- ps.close();
- clientsocket.close();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement