Java 使用套接字编程在服务器端获取字符串或文件

Java 使用套接字编程在服务器端获取字符串或文件,java,sockets,Java,Sockets,我在java应用程序中有两个项目,第一个项目是客户端,第二个项目是服务器端,客户端通过网络向服务器发送文件或字符串,我在项目中使用socket编程。 在客户端,我有很多类,我从每个类中创建对象,填充对象,然后使用Gson将对象转换为字符串并发送到服务器(使用套接字编程)。在服务器端,我有一个监听一个端口的套接字,我的问题是在服务器端,我不知道哪种类型通过网络发送到服务器,例如客户端可以通过网络发送字符串和文件,在服务器端,我不知道哪种类型(字符串或文件)发送到服务器,我可以基于该格式。 请提出解

我在java应用程序中有两个项目,第一个项目是客户端,第二个项目是服务器端,客户端通过网络向服务器发送文件或字符串,我在项目中使用socket编程。 在客户端,我有很多类,我从每个类中创建对象,填充对象,然后使用Gson将对象转换为字符串并发送到服务器(使用套接字编程)。在服务器端,我有一个监听一个端口的套接字,我的问题是在服务器端,我不知道哪种类型通过网络发送到服务器,例如客户端可以通过网络发送字符串和文件,在服务器端,我不知道哪种类型(字符串或文件)发送到服务器,我可以基于该格式。 请提出解决我问题的办法


向您致意

您可以使用类似于我下面的代码

     ServerSocket sersock =null;
        Socket sock =null;
         sersock = new ServerSocket(3333); 
            System.out.println("Server ready to receive");
            sock = sersock.accept( );
            System.out.println("accepting client request");
            InputStream istream = sock.getInputStream();
            BufferedReader receiveRead = new BufferedReader(new InputStreamReader(istream)); 
            String receiveMessage;
            while(true) { 
                if((receiveMessage = receiveRead.readLine()) != null) {
                    System.out.println("receiveMessage server  "+receiveMessage);
}

没关系。我试着从客户端传递字符串…我认为对于文件,它看起来也是一样的。因为客户端通过网络以二进制形式发送所有内容,所以我们将以套接字读取器的形式获取它,所以两者应该是一样的。我想…谢谢,我认为对于大文件(大尺寸),这段代码很慢,是吗?是的,但速度不会太慢。传递一个大文件,计算时间,看看性能。