Hallo,
google sei dank hab ich das meiste gefunden und mein erstes server/client Pärchen geschrieben.
die beiden finden sich, alles gut.
nun hab ich frage ob ich mit der Client struktur alles richtig gemacht habe ?
ich habe eine JavaFXUI in der HauptMethode,
dann hab ich eine "Connector" die aufgerufen wird, wenn ein Knopf aufder UI gelickt wird.
dann steht erstmalls die Verbindung zwischen server und client app, werden ein paar Begrüssungen ausgetauscht, alles Tutorial like.
nun, da die Verbindung steht, möchte ich beim klicken von anderen Knöpfen daten mit dem Server auszutauschen, jenachdem welcher knopf keklickt wird, soll was anderes zurück.
nennen wir mal die methode "MatrixWasClicked".
bisher ist die bei mir lediglich eine testmethode.
meine Fragen sind nun wie folgt, kann die "matrixWasclicked" methode überprüfen, ob die Verbindung zwischen dem server und client aktiv ist ? die verbindung wurde ja in einer anderer methode aufgebaut !
kann ich überhaupt mit einer Methode die Verbindung aufbauen, und dann durch andere Methoden die Daten dem Server schicken / von server empfangen ?
dies wäre meine Verbindungs Methode
und so rufe ich sie in der GUI auf
damit nicht zuviel brei in einem Code ist, woltle ich die aufgaben ein bissle verteilen,
daher wollteich ursprünglich beim clicken eines buttons lediglich
aktivieren, und dort dann in Abhängigkeit von der ID entsprechend mit dem server weiter komunizieren.
nur kann ich in der "matrixWasClicked" auf die im "connector" erstellte verbindung, und die ganzen StreamWriter usw zugreifen ?
google sei dank hab ich das meiste gefunden und mein erstes server/client Pärchen geschrieben.
die beiden finden sich, alles gut.
nun hab ich frage ob ich mit der Client struktur alles richtig gemacht habe ?
ich habe eine JavaFXUI in der HauptMethode,
dann hab ich eine "Connector" die aufgerufen wird, wenn ein Knopf aufder UI gelickt wird.
dann steht erstmalls die Verbindung zwischen server und client app, werden ein paar Begrüssungen ausgetauscht, alles Tutorial like.
nun, da die Verbindung steht, möchte ich beim klicken von anderen Knöpfen daten mit dem Server auszutauschen, jenachdem welcher knopf keklickt wird, soll was anderes zurück.
nennen wir mal die methode "MatrixWasClicked".
bisher ist die bei mir lediglich eine testmethode.
Java:
public static void MatrixWasClicked(Integer id){
System.out.println("Matrix number "+id+" was clicked");
}
meine Fragen sind nun wie folgt, kann die "matrixWasclicked" methode überprüfen, ob die Verbindung zwischen dem server und client aktiv ist ? die verbindung wurde ja in einer anderer methode aufgebaut !
kann ich überhaupt mit einer Methode die Verbindung aufbauen, und dann durch andere Methoden die Daten dem Server schicken / von server empfangen ?
dies wäre meine Verbindungs Methode
Java:
public static void Connector(String serverName) {
{
int port = 9980;
try {
System.out.println("Connecting to " + serverName
+ " on port " + port);
Socket client = new Socket(serverName, port);
System.out.println("Just connected to "
+ client.getRemoteSocketAddress());
OutputStream outToServer = client.getOutputStream();
DataOutputStream out;
out = new DataOutputStream(outToServer);
out.writeUTF("Hello from "
+ client.getLocalSocketAddress());
InputStream inFromServer = client.getInputStream();
DataInputStream in =
new DataInputStream(inFromServer);
System.out.println("Server says " + in.readUTF());
//client.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
und so rufe ich sie in der GUI auf
Java:
connectBtn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
Connector(topServeradressField.getPromptText());
}
});
damit nicht zuviel brei in einem Code ist, woltle ich die aufgaben ein bissle verteilen,
daher wollteich ursprünglich beim clicken eines buttons lediglich
Java:
MatrixWasClicked(i);
aktivieren, und dort dann in Abhängigkeit von der ID entsprechend mit dem server weiter komunizieren.
nur kann ich in der "matrixWasClicked" auf die im "connector" erstellte verbindung, und die ganzen StreamWriter usw zugreifen ?