有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java通过socket将多个变量从客户端发送到服务器

我最近学习了Java中的socket,以及通过socket在客户端和服务器之间来回发送信息。 我想要实现的是将“用户名”和“密码”从客户端发送到服务器,然后根据数据库中的数据检查这些变量

将这两个独立值的值发送到服务器以便在服务器端验证的最佳方法是什么

客户端

clientSocket = new Socket("192.168.56.1", 7777);

        in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
        out = new PrintWriter(clientSocket.getOutputStream(), true);


    //starting the thread
    while(runner == null)
    {
        runner = new Thread(this);

        runner.start();
    }
}
public void run()
{
    String userNameAdminLogin;
    String passwordAdminLogin;
    while(runner == Thread.currentThread())
    {
        userNameAdminLogin = txtUserName.getText();
        passwordAdminLogin = txtPassword.getText();

        out.println(userNameAdminLogin);
        out.println(passwordAdminLogin);
    }

服务器端

while(listening)
            {
                clientSocket = ServerSoc.accept();


                in = new DataInputStream(clientSocket.getInputStream());

                BufferedReader is = new BufferedReader(new InputStreamReader(in));

                os = new PrintStream(clientSocket.getOutputStream());

                //How can I save the two seperate cases of data in variables on server side?
                System.out.println(is.readLine());

            }

问候

阿里安


共 (3) 个答案

  1. # 1 楼答案

    如果你一边写两行,你显然应该读另一边的两行:

    String name = is.readLine();
    String password = is.readLine();
    
  2. # 2 楼答案

    如果使用ObjectOutputStream,则可以编写整个对象

    这些对象必须是可序列化的