Java Socket 服务端发送数据 客户端接收数据
服务端:
package com.thinkgem.wlw.modules.api.test.socket; /**
* @Author: zhouhe
* @Date: 2019/4/8 9:30
*/ import java.io.*;
import java.net.*; /**
* 服务端
* 负责发送数据
*/
public class SocketServerTest { private static final int PORT = 5209; public static void test() {
ServerSocket server = null;
Socket socket = null;
DataOutputStream out = null;
try {
server = new ServerSocket(PORT);
socket = server.accept();
out = new DataOutputStream(socket.getOutputStream());
while (true) {
Thread.sleep(1000);
out.writeUTF(getRandomStr());
out.flush();
}
} catch (Exception e) {
e.printStackTrace();
}
} private static String getRandomStr() {
String str = "";
int ID = (int) (Math.random() * 30);
int x = (int) (Math.random() * 200);
int y = (int) (Math.random() * 300);
int z = (int) (Math.random() * 10);
str = "ID:" + ID + "/x:" + x + "/y:" + y + "/z:" + z;
return str;
} public static void main(String[] args) {
test();
}
}
客户端:
package com.thinkgem.wlw.modules.api.test.socket; /**
* @Author: zhouhe
* @Date: 2019/4/8 9:27
*/ import java.net.*;
import java.io.*; /**
* 客户端
* 负责接收数据
*/
public class SocketClientTest {
private static final String HOST = "127.0.0.1";
private static final int PORT = 5209; private static void test() {
Socket socket = null;
DataInputStream dis = null;
InputStream is = null; try {
socket = new Socket(HOST, PORT);
is = socket.getInputStream();
dis = new DataInputStream(is);
while (true) {
System.out.println("receive_msg:" + dis.readUTF());
}
} catch (Exception e) {
e.printStackTrace();
}
} public static void main(String[] args) { test();
}
}
测试效果:

Java Socket 服务端发送数据 客户端接收数据的更多相关文章
- java网络编程TCP传输—流操作—服务端反馈与客户端接收
在读取完流后,服务端会向客户端返回一些数据,告诉客户端,已经写完了. 在这里和”流操作—拿到源后的写入动作“差不多,客户端同样以byte与Buffered两种缓冲读取作为例子,同时,.也是希望大家给补 ...
- java实现服务端开启多线程处理客户端的上传图片请求
将客户端c:\\a.jpg 上传到e:\\公司名称+6位随机数.jpg 这样为了不断开连接客户端每次上传的图片名字不重名覆盖,验证之用 这里需要注意的是Socket的终止客户端的输入方法 shut ...
- 使用ajax向服务端发送Form中的数据
前端代码: <form action="" id="myFormUpdate"> <p>宠物名称: <input type=&qu ...
- java socket 服务端 客户端
Server package com.witwicky.socket.basicsocket; import java.io.IOException; import java.io.InputStre ...
- Socket探索1-两种Socket服务端实现
介绍 一次简单的Socket探索之旅,分别对Socket服务端的两种方式进行了测试和解析. CommonSocket 代码实现 实现一个简单的Socket服务,基本功能就是接收消息然后加上结束消息时间 ...
- 服务端挂了,客户端的 TCP 连接还在吗?
作者:小林coding 计算机八股文网站:https://xiaolincoding.com 大家好,我是小林. 如果「服务端挂掉」指的是「服务端进程崩溃」,服务端的进程在发生崩溃的时候,内核会发送 ...
- https单向认证服务端发送到客户端到底会不会加密?
最近向大神请教了CA认证单向认证和双向认证的问题,有一点不太明白,单向认证的时候,为什么服务端发送到客户端的东西也是加密的?
- socket小程序写一个客户端,实现给服务端发送hello World字符串,将客户端发送的数据变成大写后返回
写一个客户端,实现给服务端发送hello World字符串,将客户端发送的数据变成大写后返回 本机id是192.168.xx.xy 服务端 import socket soc = socket.soc ...
- [经验] Java 服务端 和 C# 客户端 实现 Socket 通信
由于项目需要, 我需要通过 Java 开发的服务端对 C# 作为脚本语言开发的 unity 项目实现控制 话不多说, 直接上代码 首先, 我们先来构建服务端的代码, 服务端我们使用 Java 语言 i ...
随机推荐
- Linux命令大杂烩
查看linux出口IP curl ifconfig.me scp跨服务器转移文件命令 scp 文件 root@IP:/application/apache-tomcat-8.0.36 回车, ...
- BigDecimal 在for循环中相加注意事项
public static void main(String[] args) { BigDecimal bigDecimal = new BigDecimal(1); for (int i = 0; ...
- 用Redis管理Session
maven <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</ar ...
- Cookies, Claims and Authentication in ASP.NET Core(转载)
Most of the literature concerning the theme of authentication in ASP.NET Core focuses on the use of ...
- python在linux中用setproctitle自定义进程名
在linux中,如果想用python自定义进程名,需要用到第三方库setproctitle. #coding:utf8 import setproctitle setproctitle.setproc ...
- AOP - 2 实例(SpringBoot 注解方式)
1.创建Spring Boot项目 创建一个Spring Boot 项目,然后pom中引入web 模块与AOP相关依赖. <dependency> <groupId>org.s ...
- Django(四) ORM 外键操作及初识Ajax
一.内容回顾 1.Django请求的生命周期: 路由系统 -> 视图函数(获取模板+数据 -> 渲染) -> 字符串返回给用户 2.路由系统: /index/ #-> 函数 ...
- dataTables 插件学习整理
在项目中使用了dataTables 插件,学习整理一下. dataTables 的官方中文网站 http://www.datatables.club 引入文件: 所有的都要引入 jq文件 1. dat ...
- React Native & iframe & WebView
React Native & iframe & WebView React Native 怎么渲染 iframe 页面 WebView & source html https: ...
- Netty 客户端断线重连
client 关闭后会执行 finally 代码块,可以在这里可以进行重连操作 public class NettyClient implements Runnable { private final ...