Java 从客户端到服务器的连接被拒绝

Java 从客户端到服务器的连接被拒绝,java,sockets,tcp,network-programming,Java,Sockets,Tcp,Network Programming,我正在学习Java中的套接字,只是不知道如何从服务器接收回响应 下面,我试图让用户从选项中选择他想要的: 1-2-3-4 然后我想将它们拆分并作为一个数组发送到服务器,服务器应该在那里发回用户选择的数量 例如,如果用户选择 2 3 4 1 2 3 4 1 服务器应该返回 八, 服务器正在发送响应,但在客户端我收到错误: 线程“main”java.net.ConnectException中的异常:连接 拒绝:连接到java.net.DualStackPlainSocketImpl.connect0

我正在学习Java中的套接字,只是不知道如何从服务器接收回响应

下面,我试图让用户从选项中选择他想要的:

1-2-3-4

然后我想将它们拆分并作为一个数组发送到服务器,服务器应该在那里发回用户选择的数量

例如,如果用户选择

2 3 4 1 2 3 4 1

服务器应该返回

八,

服务器正在发送响应,但在客户端我收到错误:

线程“main”java.net.ConnectException中的异常:连接 拒绝:连接到java.net.DualStackPlainSocketImpl.connect0(本机) 方法),位于java.net.DualStackPlainSocketImpl.socketConnect(未知 源代码)位于java.net.AbstractPlainSocketImpl.doConnect(未知源代码) 位于java.net.AbstractPlainSocketImpl.connectToAddress(未知源) 位于java.net.AbstractPlainSocketImpl.connect(未知源) 位于的java.net.PlainSocketImpl.connect(未知源) 位于的java.net.socksocketimpl.connect(未知源) 位于的java.net.Socket.connect(未知源) 位于的java.net.Socket.connect(未知源) java.net.Socket。(未知源代码)位于 java.net.Socket。(未知源代码)位于 main(ClientClass.java:26)

我不知道为什么这个问题。有什么帮助吗

我的客户:

import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.util.Scanner;

public class ClientClass {

    public static void main(String args[]) throws IOException, ClassNotFoundException 
    {
        // take order and convert it to array of choices
        Scanner myScanner = new Scanner(System.in); // take from user
        System.out.println("Enter all your choices seperated by space:");
        System.out.println("Choices are: 1- 2- 3- 4");
        String orderString = myScanner.next();
        orderString += myScanner.nextLine();
        String orderArray[] = orderString.split(" ");

        // send request to server
        Socket mySocket = new Socket("127.0.0.1", 4444); // create a socket
        ObjectOutputStream out = new ObjectOutputStream(mySocket.getOutputStream());
        out.writeObject(orderArray);  

       // get response from server
       InputStream is = mySocket.getInputStream();
       InputStreamReader isr = new InputStreamReader(is);
       BufferedReader br = new BufferedReader(isr);
       String message = br.readLine();
       System.out.println("Message received from the server : " +message);

    }
}
我的服务器:

import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.PrintStream;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.nio.channels.SocketChannel;
import java.util.Scanner;

public class ServerClass {

    public static void main(String args[]) throws IOException, ClassNotFoundException
    {
        // receive
        ServerSocket myServerSocket = new ServerSocket(4444); // create a server socket
        Socket mySimpleSocket = myServerSocket.accept(); // accept requests
        ObjectInputStream ois = new ObjectInputStream(mySimpleSocket.getInputStream());
        String[] choices = (String[]) ois.readObject();


       // send back response
       OutputStream os = mySimpleSocket.getOutputStream();
       OutputStreamWriter osw = new OutputStreamWriter(os);
       BufferedWriter bw = new BufferedWriter(osw);
       bw.write(choices.length);
       System.out.println("Message sent to the client is "+choices.length);
       bw.flush();

    }
}
服务器正在发送响应

垃圾。服务器甚至没有收到传入连接,更不用说读取请求,更不用说发送响应了

但在客户端,我得到一个错误:

根据这一证据,服务器甚至没有运行。当然不是在与客户端相同的主机上运行,这是
新套接字(“127.0.0.1”,4444)
所需要的

Exception in thread "main" java.net.ConnectException: Connection refused: connect at