java socket通信demo_Java Socket通信示例
Socket分为ServerSocket和Socket两大类;
其中ServerSocket用于服务器端,可以通过accept方法监听请求,监听到请求后返回Socket;
Socket用户具体完成数据传输,客户端直接使用Socket发生请求并传输数据。
DEMO:
单方面发送消息:
服务端:
package com.seesun2012.socket;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
/**
* Socket服务端
*
* @author seesun2012@163.com
*
*/
public class TcpServer {
public static void main(String[] args) {
doServer();
}
private static void doServer() {
try {
//建立服务端的Socket服务
ServerSocket ss = new ServerSocket(15421);
//获取客户端对象
Socket s = ss.accept();
//获取客户端IP地址
String ip = s.getInetAddress().getHostAddress();
//获取客户端端口号
int port = s.getPort();
System.out.println(ip + ":" + port + " 已建立连接");
//用输入流接收客户端输出流
InputStream ins = s.getInputStream();
byte[] bytes = new byte[1024];
int len = ins.read(bytes);
//将二进制转成字符串
String text = new String(bytes, 0, len);
System.out.println(text);
//释放资源
s.close();
ss.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
客户端:
package com.seesun2012.socket;
import java.io.OutputStream;
import java.net.Socket;
/**
* Socket客户端
*
* @author seesun2012@163.com
*
*/
public class TcpClient {
public static void main(String[] args) {
doSocket();
}
private static void doSocket(){
try {
//与服务器建立连接
Socket s = new Socket("127.0.0.1", 15421);
//获取一个输出流
OutputStream os = s.getOutputStream();
//向服务器输出流中传入二进制字节流
os.write("你好,CHINA~!".getBytes());
//释放资源
s.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
java socket通信demo_Java Socket通信示例相关推荐
- Java的Socket通信----通过 Socket 实现 TCP 编程之多线程demo(2)
JAVA Socket简介 所谓socket 通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通常通过"套接字"向网络发出请求或者应答 ...
- connect: 网络不可达_Java网络编程和NIO详解1:JAVA 中原生的 socket 通信机制
本文转自:https://github.com/jasonGeng88/blog 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https ...
- python socket模块实现udp通信_Python基于socket模块实现UDP通信功能示例
Python基于socket模块实现UDP通信功能示例 本文实例讲述了Python基于socket模块实现UDP通信功能.分享给大家供大家参考,具体如下: 一 代码 1.接收端 import sock ...
- java socket 全双工_java socket实现全双工通信
单工.半双工和全双工的定义 如果在通信过程的任意时刻,信息只能由一方A传到另一方B,则称为单工. 如果在任意时刻,信息既可由A传到B,又能由B传A,但只能由一个方向上的传输存在,称为半双工传输. 如果 ...
- java web接收tcp_Java多线程实现TCP网络Socket编程(C/S通信)
开篇必知必会 在前一篇<基于TCP协议网络socket编程(java实现C/S通信)>,实际存在一个问题,如果服务器端在建立连接后发送多条信息给客户端,客户端是无法全部接收的,原因在于客户 ...
- java socket 端口_Java Socket通信如何摆平自身端口问题
Java Socket通信在使用的时候有不少的问题,在端口编程上来说是一个十分重要的.下面我们就看看Java Socket通信如何才能更好的使用相关的代码.希望大家有所帮助. 事实上网络编程简单的理解 ...
- java socket 全双工客户端_[Java教程]用socket模拟实现全双工通信
[Java教程]用socket模拟实现全双工通信 0 2017-04-04 00:00:14 //源码下载 http://download.csdn.net/detail/qq_24054661/98 ...
- Java网络编程和NIO详解1:JAVA 中原生的 socket 通信机制
JAVA 中原生的 socket 通信机制 转载自:https://github.com/jasonGeng88/blog 当前环境 jdk == 1.8 知识点 socket 的连接处理 IO 输入 ...
- 【Java】GUI界面聊天小程序(基于Socket的客户端服务端通信)
基于Socket的客户端服务端通信--Java GUI界面小程序 Socket概念及其通信过程: Socket是TCP/IP中的基本概念,它负责将TCP/IP包发送到指定的IP地址.也可以看成是在两个 ...
最新文章
- 一个效率更高的全半角字符串截取函数
- 六分钟学会创建Oracle表空间的步骤
- 【Vegas原创】“無法解析 equal to 動作的定序衝突”错误的处理
- 领域设计基本理论知识总结(转)
- 2018明星学术公众号TOP 10重磅发布,PaperWeekly再度入选
- Pytorch使用Vision Transformer做肺癌和结肠癌组织病理学图像分类
- sql语句lastupdate使用数据库库函数
- kbengine 的 nginx反向代理https/wss 配置 支持kbe负载均衡
- John the Ripper 密码破解者
- 系统服务器ping偶尔超时,云服务器ping超时原因
- 关于Session、Cookie、Token你知道多少?
- 记一次企业邮官网SEO优化
- 服务器和售票系统,网上售票系统的开发与实现.doc
- 〖TFS_CLUB社区〗-〖星荐官共赢计划〗~ 期待各位小伙伴的加入~
- C语言实现IP合法性判断
- python,pip,xlrd 安装
- 编程和乐高机器人的区别
- Ubuntu 安装MTP驱动访问安卓设备(转载)
- C语言 校园歌手比赛系统源码
- 使用字节流和字符流对文件进行操作
热门文章
- boost::type_erasure模块实现类型安全的 printf的测试程序
- boost::sort::sample_sort相关的测试程序
- boost::mp11::mp_set_difference相关用法的测试程序
- boost::log相关用法的测试程序
- boost::detail::lexical_cast_stream_traits用法的测试程序
- boost::icl模块interval_map 的最简单示例是重叠计数器
- boost::hana::fix用法的测试程序
- boost :: swap交换整数数组的测试程序
- VTK:可视化之DisplayCoordinateAxes
- 在Qt Designer中使用容器