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