Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
套接字java编程_Java_Serversocket - Fatal编程技术网

套接字java编程

套接字java编程,java,serversocket,Java,Serversocket,我是Java编程的初学者,我必须用套接字实现一个项目。我试图从客户端获取数据以进行连接,但我一直在从DAtaInputStream读取数据。我不知道为什么run方法停止在“op=din.readInt()”行中执行 是一个阻塞操作,这意味着执行该方法的线程将停止,直到它获得要读取的数据。套接字java编程用于在java运行时环境(JRE)的不同平台上运行的应用程序之间的通信 java编程可以是面向连接的,也可以是无连接的 Socket用于DatagramPack,DatagramSocket和面

我是Java编程的初学者,我必须用套接字实现一个项目。我试图从客户端获取数据以进行连接,但我一直在从DAtaInputStream读取数据。我不知道为什么run方法停止在“op=din.readInt()”行中执行


是一个阻塞操作,这意味着执行该方法的线程将停止,直到它获得要读取的数据。

套接字java编程用于在java运行时环境(JRE)的不同平台上运行的应用程序之间的通信

java编程可以是面向连接的,也可以是无连接的

Socket用于DatagramPack,DatagramSocket和面向连接的Socket编程类用于无连接的socketjava编程

网络通信出现在传输控制协议(TCP)和用户数据报协议(UDP)中。TCP和UDP都有独特的方式,用于不同的目的

网络通信有两种类型,分别是:-

1) 。TCP是一种简单可靠的协议,它使客户端能够连接到服务器,并使两个系统进行通信。传输控制协议每个实体都知道其通信有效负载已从服务器接收

2) 。UDP是一种无连接协议,对于不需要每个数据包都到达其目的地的情况(如媒体流),它非常有效

import java.net.*;  
import java.io.*;  

public class ServerData {  
    
public static void main(String[] args){  
    
    try{  
    ServerSocket ss=new ServerSocket(3000);  
    Socket s=ss.accept();//connection orientation   
    DataInputStream dis=new DataInputStream(s.getInputStream());  
    String  str=(String)dis.readUTF();  
    System.out.println("message= "+str);  
    ss.close();  
    }catch(Exception e){
        System.out.println(e);}  
    }  
} 
    
import java.net.*;  
import java.io.*;  

public class UserData { 
    
public static void main(String[] args) {  
    try{      
    Socket s=new Socket("localhost",3000);  
    DataOutputStream dout=new DataOutputStream(s.getOutputStream());  
    dout.writeUTF("Hello Server Data");  
    dout.flush();  
    dout.close();  
    s.close();  
    }catch(Exception e){
        System.out.println(e);}  
    }  
} 

你应该阅读并修改相应的代码。模糊的标题。重写以总结您的具体技术问题。感谢您的建议,但我从客户端通过DataOutputStream发送数据,服务器不保留任何内容。您发送的是什么类型的数据?例如,像1这样的int,我只是认为问题出在套接字的实例中,因为我使用telnet。
din.readInt();
import java.net.*;  
import java.io.*;  

public class ServerData {  
    
public static void main(String[] args){  
    
    try{  
    ServerSocket ss=new ServerSocket(3000);  
    Socket s=ss.accept();//connection orientation   
    DataInputStream dis=new DataInputStream(s.getInputStream());  
    String  str=(String)dis.readUTF();  
    System.out.println("message= "+str);  
    ss.close();  
    }catch(Exception e){
        System.out.println(e);}  
    }  
} 
    
import java.net.*;  
import java.io.*;  

public class UserData { 
    
public static void main(String[] args) {  
    try{      
    Socket s=new Socket("localhost",3000);  
    DataOutputStream dout=new DataOutputStream(s.getOutputStream());  
    dout.writeUTF("Hello Server Data");  
    dout.flush();  
    dout.close();  
    s.close();  
    }catch(Exception e){
        System.out.println(e);}  
    }  
}