Socket:建立网络连接时使用.
ServerSocket:用于服务器端.
[一个简单的单线程的"Client-Server"例子]
Server(服务器端):使用ServerSocket监听指定的端口,等待客户连接请求,客户连接后,会话产生.
Client(客户端):使用Socket对服务器的端口发出连接请求,一旦连接成功,打开会话.
***********************Server********************
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class Server{
public static void main(String []args){
try{
ServerSocket ss = new ServerSocket(8099);
System.out.println("服务器已启动,等到客户端的连接...");
Socket socket = ss.accept(); -->服务器收到客户端的数据后,创建与此客户端对话的Socket
DataInputStream in=new DataInputStream(socket.getInputStream());
-->用于接收客户端 发来的数据的输入流
System.out.println("服务器接受到客户端的连接请求:"+in.readUTF());
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeUTF("接受连接请求,连接成功");
socket.close();
ss.close();
}catch(Exception e){
e.printStackTrace(); }
}
}
*************************Client******************************
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.Socket;
public class Client{
public static void main(String []args){
try{
Socket socket = new Socket("localhost",8099);
DataOutputStream out = new DataOutputStream(socket.getOutputStream());
out.writeUTF("客户端请求服务器的连接...");
DataInputStream in = new DataInputStream(socket.getInputStream());
System.out.println(in.readUTF()); socket.close();
}catch(Exception e){
e.printStackTrace();
}
}
} 注释:8099-->自定义端口,最好大于1024均可
分享到:
相关推荐
- 在Java中,Socket提供了`getInputStream()`和`getOutputStream()`方法,分别返回Socket连接的输入流和输出流。我们可以使用这些流对象进行数据的读写操作。例如,`DataInputStream`和`DataOutputStream`可以方便...
接着是`Connection.java`,它可能是代表单个Socket连接的类,具有以下组件和方法: 1. Socket实例:存储实际的Socket对象,用于数据传输。 2. 输入/输出流:通过`Socket`获取`InputStream`和`OutputStream`,用于...
在这个例子中,我们将探讨如何使用Java的Socket API进行客户端-服务器通信。首先,我们有两个主要的角色:一个是服务器端(Server),它监听特定的端口等待连接;另一个是客户端(Client),它尝试连接到服务器并...
在这个例子中,我们将探讨如何使用Java Socket进行数据的发送和接收。Socket在Java中被封装在`java.net.Socket`和`java.net.ServerSocket`类中,分别用于客户端和服务器端的通信。 首先,我们从服务器端开始。在...
在这个"java socket 客户端和服务端例子"中,我们有两个主要组件:服务端(server)和客户端(client),以及可能的服务类(service)用于处理特定的业务逻辑。 首先,让我们详细了解一下Java Socket的工作原理。在...
在Android开发中,网络编程是不可...总之,Android中的Java Socket客户端是通过建立连接、获取输入/输出流、发送和接收数据以及关闭连接来实现的。理解和掌握这些基础知识对于开发涉及网络通信的Android应用至关重要。
在这个小例子中,我们将探讨这两种协议的基本用法以及如何在Java中实现它们。 首先,TCP是一种面向连接的、可靠的协议,它确保数据的完整性和顺序。在Java中,我们可以使用`java.net.Socket`类来创建TCP Socket。...
在这个例子中,客户端将命令和一个名为"FindWordCount.jar"的Java可执行文件发送到服务器,然后服务器执行这个jar包并返回结果给客户端。以下是关于Java Socket编程和远程执行任务的详细知识讲解。 1. **Java ...
Java Socket默认支持这种通信模式,因为Socket连接一旦建立,双方都可以读写数据,但一次只能读或写,不能同时进行。例如,服务器先发送数据,然后客户端响应,接着客户端再发送数据,服务器回应,以此类推。 **3. ...
在这个例子中,客户端发送一条消息到服务器,服务器接收到消息后回复,然后客户端读取并打印服务器的回复,最后双方关闭连接。 ### 四、高级特性 1. **多线程处理**:如果服务器需要同时处理多个客户端连接,可以...
3. **Socket连接过程**: - 服务器端首先创建一个`ServerSocket`实例,并调用`bind()`方法绑定到特定的IP地址和端口号,然后调用`accept()`方法监听客户端连接。 - 客户端创建`Socket`实例,通过`connect()`方法...
在"socket_my_src_保持长连接_模拟学生行为统计,刷卡"这个例子中,可能涉及到模拟学生刷卡的行为,通过长连接实时上报学生的刷卡数据,服务器端接收到数据后进行统计分析。这种实时通信的方式能够及时反映学生的...
总的来说,Java Socket提供了基础的网络通信能力,无论是长连接还是短连接,开发者都需要理解Socket的工作原理,以及如何在实际应用中正确地管理和使用Socket连接,以确保数据传输的可靠性和效率。
Socket编程是Java编程中用于网络通信的重要组成部分,它允许两台计算机通过TCP/IP协议进行双向通信。...这个过程涉及了Socket的创建、连接、数据传输和关闭,对于理解和实践Java网络编程是非常有帮助的。
总的来说,这个基于Java的socket的网络聊天程序是初学者实践网络编程的好例子,涵盖了Socket连接、数据传输、异常处理等核心概念。通过分析和运行这个项目,不仅可以深入理解Socket的工作原理,还能提升对Java多线程...
在这个"一个简单的JAVA SOCKET的例子"中,我们可以通过分析描述和标签了解到,它是一个基于Java的简单聊天程序,包含服务端和客户端,且使用了Swing库来构建用户界面,非常适合初学者学习。 首先,让我们从基础开始...
在实际的Android应用中,为了提高用户体验,我们可能会在不同的线程中处理Socket连接和数据传输,避免阻塞UI线程。这通常通过创建一个`AsyncTask`或者使用`Handler`和`Looper`来实现。 标签“socket”表明这个示例...
在这个例子中,客户端使用`Socket`连接到服务器的"localhost"(即本地主机)的8080端口。然后,通过`getOutputStream`和`getInputStream`方法获取到与服务器通信的数据流。 TCP协议保证了数据的可靠传输,它使用...
客户端(Socket_Client)则需要连接到服务器,建立Socket连接,并通过输入输出流进行数据交互: ```java Socket socket = new Socket("localhost", 8888); OutputStream outputStream = socket.getOutputStream(); ...
在Java中,`java.net.Socket`类和`java.net.ServerSocket`类提供了创建和管理Socket连接的接口。 1. **服务器端(Server)**: - 使用`ServerSocket`类创建一个监听特定端口的服务器。`ServerSocket(int port)`...