please can you help me in this BankAccount code i do it but the teacher remove some my code and ask me when i see complete i complete but i when i do it i have some error can you help me i will post my code

the client code:

import java.io.*;
import java.net.*;
public class Client{
 static Socket conn = null;
 static PrintWriter writer = null;
 static BufferedReader reader = null;
 // Method which connect the client to the service (identified by port)
 // provided by the server (identified by ipaddr).
 // If the connection is successful, it return true.
 public static boolean connect(String ipaddr, int port) {
  try { // Connect to server
   conn = new Socket(ipaddr, port);
  } catch (IOException e) {
   System.err.println("Cannot connect to " + ipaddr +"/"+ port);
   System.exit(1);
  }
  try { // Get a reading and writing channels to the connection.
   writer = new PrintWriter(conn.getOutputStream(), true);
   reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
  } catch (IOException e) {
   System.err.println("Couldn't get reading/writing channels to socket");
   System.exit(1);
  }
  return true;
 }
 public static void main(String[] args) throws IOException {
  String request = null; // Used to send request messages to server
  String response = null;// Used to receive response messages from server
  // Get reading channel from standard input (i.e., keyboard)
  BufferedReader keyboard = new BufferedReader(new InputStreamReader(System.in));
  String command = "";
  boolean connected = false;
  while (command != null) {
   System.out.print("> ");
   command = keyboard.readLine();
   if (command.equals("connect")) {
    connected = connect(args[0], Integer.parseInt(args[1]));
    request = "hello";
   } else if (command.equals("disconnect")) {
 
   // complete ...
    connected = false;
   } else if (command.equals("exit")) {
   // complete ...
   } else if (command.equals("balance")) {
   // complete ...
   } else if (command.startsWith("deposit")) {
   // complete ...
   } else if (command.startsWith("withdraw")) {
   // complete ...
   } else { // this is the case where the command entered is not valid
   // complete ...
    continue; // go back to the while loop. NOT to the if (connected) ...
   }
   // send request and read response (if we are connected)
   if (connected == true) { // do the following only if connected
    writer.println(request);  // send the request prepared above
    response = reader.readLine(); // receive the response to it.
    System.out.println("\t"+response); // print out the response
   }
  }
  // close keyboard channel
  keyboard.close();
 }
}

the server code:

import java.net.*;
import java.io.*;
class Server{
 public static void main(String[] args) {
  int port = Integer.parseInt(args[0]);
  ServerSocket server;
  try {
   server = new ServerSocket(Integer.parseInt(args[0]));
  } catch (IOException ioe) {
   System.err.println("Couldn't run server on port " + port);
   return;
  }
  while(true) {
   try {
    Socket connection = server.accept();
    ConnectionHandler handler = new ConnectionHandler(connection);
    new Thread(handler).start();
   } catch (IOException ioe) {
   }
  }
 }
}

the BankAccount Code:

import java.net.*;
import java.io.*;
class Server{
 public static void main(String[] args) {
  int port = Integer.parseInt(args[0]);
  ServerSocket server;
  try {
   server = new ServerSocket(Integer.parseInt(args[0]));
  } catch (IOException ioe) {
   System.err.println("Couldn't run server on port " + port);
   return;
  }
  while(true) {
   try {
    Socket connection = server.accept();
    ConnectionHandler handler = new ConnectionHandler(connection);
    new Thread(handler).start();
   } catch (IOException ioe) {
   }
  }
 }
}

the ConnectionHandler code:

import java.net.*;
import java.io.*;
 
class ConnectionHandler implements Runnable {
 // The connection with the client
 private Socket conn = null;
 PrintWriter writer = null;
 BufferedReader reader = null;
 String request = null;
 String response = null;
 BankAccount account = new BankAccount();
 public ConnectionHandler(Socket conn) {
  this.conn = conn;
 }
 public void run() {
  try {
   writer = new PrintWriter(conn.getOutputStream(), true);
   reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
   String ipaddr = conn.getInetAddress().getHostName();
   int port = conn.getPort();
   System.out.println("Got connection from: " + ipaddr + ":" + port);
   while ((request = reader.readLine()) != null) {
    System.out.println(ipaddr + ":" + port + ": <-\t"+ request);
    if (request.equals("hello")) {
     response = "hello";
    } else if (request.equals("balance")) {
      response = Float.toString(account.balance());
     // complete...
    } else if (request.startsWith("deposit")) {
     // startsWith(): http://java.sun.com/j2se/1.4.2/docs/...va.lang.String)
     // split(): http://java.sun.com/j2se/1.4.2/docs/...va.lang.String)
     // trim(): http://java.sun.com/j2se/1.4.2/docs/...ring.html#trim()
     String amount = request.split(" ")[1].trim();
     // floatValue(): http://java.sun.com/j2se/1.4.2/docs/...va.lang.String)
     float f = Float.valueOf(amount).floatValue();
     response = Float.toString(account.deposit(f));
    } else if (request.startsWith("withdraw")) {
    // complete  ...
    } else { // this is the case none of the above
    // complete ...
    }
    writer.println(response);
    System.out.println(ipaddr + ":" + port + ": ->\t"+ response);
   }
  } catch (IOException ioe) {
  }
 }
}
This article has been dead for over six months. Start a new discussion instead.