Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- The server
- import java.io.*;
- import java.net.*;
- public class Provider{
- ServerSocket providerSocket;
- Socket connection = null;
- ObjectOutputStream out;
- ObjectInputStream in;
- String message;
- Provider(){}
- void run()
- {
- try{
- //1. creating a server socket
- providerSocket = new ServerSocket(2004, 10);
- //2. Wait for connection
- System.out.println("Waiting for connection");
- connection = providerSocket.accept();
- System.out.println("Connection received from " + connection.getInetAddress().getHostName());
- //3. get Input and Output streams
- out = new ObjectOutputStream(connection.getOutputStream());
- out.flush();
- in = new ObjectInputStream(connection.getInputStream());
- sendMessage("Connection successful");
- //4. The two parts communicate via the input and output streams
- do{
- try{
- message = (String)in.readObject();
- System.out.println("client>" + message);
- if (message.equals("bye"))
- sendMessage("bye");
- }
- catch(ClassNotFoundException classnot){
- System.err.println("Data received in unknown format");
- }
- }while(!message.equals("bye"));
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- finally{
- //4: Closing connection
- try{
- in.close();
- out.close();
- providerSocket.close();
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- }
- }
- void sendMessage(String msg)
- {
- try{
- out.writeObject(msg);
- out.flush();
- System.out.println("server>" + msg);
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- }
- public static void main(String args[])
- {
- Provider server = new Provider();
- while(true){
- server.run();
- }
- }
- }
- The client
- import java.io.*;
- import java.net.*;
- public class Requester{
- Socket requestSocket;
- ObjectOutputStream out;
- ObjectInputStream in;
- String message;
- Requester(){}
- void run()
- {
- try{
- //1. creating a socket to connect to the server
- requestSocket = new Socket("localhost", 2004);
- System.out.println("Connected to localhost in port 2004");
- //2. get Input and Output streams
- out = new ObjectOutputStream(requestSocket.getOutputStream());
- out.flush();
- in = new ObjectInputStream(requestSocket.getInputStream());
- //3: Communicating with the server
- do{
- try{
- message = (String)in.readObject();
- System.out.println("server>" + message);
- sendMessage("Hi my server");
- message = "bye";
- sendMessage(message);
- }
- catch(ClassNotFoundException classNot){
- System.err.println("data received in unknown format");
- }
- }while(!message.equals("bye"));
- }
- catch(UnknownHostException unknownHost){
- System.err.println("You are trying to connect to an unknown host!");
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- finally{
- //4: Closing connection
- try{
- in.close();
- out.close();
- requestSocket.close();
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- }
- }
- void sendMessage(String msg)
- {
- try{
- out.writeObject(msg);
- out.flush();
- System.out.println("client>" + msg);
- }
- catch(IOException ioException){
- ioException.printStackTrace();
- }
- }
- public static void main(String args[])
- {
- Requester client = new Requester();
- client.run();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement