java通信socket实现
来源:互联网 发布:初音未来mmd动作数据 编辑:程序博客网 时间:2024/05/16 17:04
解决思路
- 创建服务端ServerSocket,绑定端口侦听网络请求,阻塞循环接收,使用PrintStream流返回响应。
- 创建客户端Socket,创建一个流套接字并将其连接到指定 IP 地址的指定端口号,使用socket.getInputStream()方法获取服务器端的响应流。
具体步骤
创建ServerSocket绑定端口:
ServerSocket serverSocket = new ServerSocket(30000);
此类实现服务器套接字。服务器套接字等待请求通过网络传入。它基于该请求执行某些操作,然后可能向请求者返回结果。
在无限循环中accept()方法阻塞接收请求。
Socket socket = serverSocket.accept();
- 使用PrintStream包装服务器端的响应流
PrintStream printStream = new PrintStream(socket.getOutputStream());
- 客户端:构造Socket套接字连接到指定地址的指定端口
Socket socket = new Socket("127.0.0.1", 30000);
- 使用BufferedReader包装套接字接受到的输入流
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
效果图
这里Server为循环,Client只是执行一次,连接后得到Server响应并输出就结束了
放码
- 服务器端
import java.io.IOException;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;public class Server { public static void main(String[] args) throws IOException { ServerSocket serverSocket = new ServerSocket(30000); while (true) { Socket socket = serverSocket.accept(); PrintStream printStream = new PrintStream(socket.getOutputStream()); printStream.print("我是墓地"); printStream.close(); printStream.flush(); } }}
- 客户端
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.Socket;public class Client { public static void main(String[] args) throws IOException { Socket socket = new Socket("127.0.0.1", 30000); BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(socket.getInputStream())); String line = bufferedReader.readLine(); System.out.println("来自对方的回答:" + line); bufferedReader.close(); socket.close(); }}
0 0
- java通信socket实现
- java实现socket通信
- Java socket 实现tcp通信
- Java socket 实现tcp通信
- java Socket通信实现步骤
- Socket 通信实现 Flash 与Java连接
- Java Socket通信实现文件传输/图片传输
- java nio socket实现多线程多用户通信
- Java实现简单的socket通信
- java socket类实现网络通信
- Java简单实现Socket非阻塞通信
- java socket实现全双工通信
- Java Socket通信实现文件传输/图片传输
- java实现多线程的socket通信技术
- Java 用socket实现网络通信
- Java之Socket编程实现一对一通信
- Java简单实现Socket非阻塞通信
- java实现简单的Socket通信
- 在Hbase Endpoint Coprocessor中使用coprocessorProxy操作例子与问题解析
- 《Java程序设计》第16周周五:数据库连接 与 随机数的使用&&《Java课程实习》日志(周一)
- 【读书笔记:C++ primer plus 第六版 中文版】第12章 类和动态内存分配
- Qt之QTextCodec乱谈
- C++编程 (二)--- GDB使用指南
- java通信socket实现
- 2015062902 - 为何盗墓等会火呢?
- [深入Python]__new__和__init__
- 工作效率提升也是一种提升。......
- Android一些关键函数和类的分析-startActivity
- [Python] Python 之 __new__() 方法与实例化
- sql 面试题目
- BZOJ2763 [JLOI2011]飞行路线(分层图最短路)
- LeetCode-Contains Duplicate-解题报告