Я создал базовую серверную и клиентскую программу на Java, и когда вы запускаете сервер, чем клиент, он соединяет эти два, если пользователь вводит пароль «root», и я сохранил это значение в качестве пароля, а я Я пытаюсь это сделать, когда соединение начинается на стороне сервера, оно выводит «Пароль», чем значение пароля, но каждый раз, когда я запускаю его, выходы программы «Пароль пуст», почему он мне это дает? ? Я изменил строку на статику, и она все еще дала мне нуль, пожалуйста, помогите и объясните?Server-Client Java
стороне сервера код
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public void lookForConnection(){
Socket connection;
clientMethod cM = new clientMethod();
{
try
{
System.out.print("Program running...");
ServerSocket serverSocket = new ServerSocket(6789);
while(true)
{
connection = serverSocket.accept();
System.out.println("Connected Succesfully!");
System.out.println(connection.getInetAddress().getHostName());
System.out.println("The password for this connection is " + cM.password);
}
}
catch(IOException ex)
{
System.out.println (ex.toString());
}
}
}
стороне клиента код
import java.io.EOFException;
import java.util.Scanner;
import java.io.IOException;
import java.net.InetAddress;
import java.net.ServerSocket;
import java.net.Socket;
public class clientMethod {
public String serverIP;
public String password;
public Socket connection;
public void Client(String host)
{
serverIP = host;
}
public void startRunning() {
try{
Scanner console = new Scanner(System.in);
System.out.print("Please provide the admin password: ");
password = console.next();
if(password.compareTo("root") == 0) {
connectToServer();
//}
}
}
catch(EOFException eofException){
System.out.print("\n Client terminated the connection");
}
catch(IOException ioException) {
ioException.printStackTrace();
}
}
private void connectToServer() throws IOException {
System.out.println("Attempting connection...");
connection = new Socket(InetAddress.getByName(serverIP), 6789);
System.out.println("Connected to " + connection.getInetAddress().getHostName());
}
}
но на моей стороне клиента не является паролем переменной, установленным на значение входа пользователя? Значит, это не имеет значения? –
нет, вам нужно сериализовать его, нет волшебства, пожалуйста, прочитайте учебник, который я предоставляю, вы лучше поймете –