java tcp socket实例
- package com.network;
- import java.io.BufferedInputStream;
- import java.io.BufferedOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.io.OutputStream;
- import java.io.OutputStreamWriter;
- import java.net.InetSocketAddress;
- import java.net.ServerSocket;
- import java.net.Socket;
- import java.util.Arrays;
- public class ServerChat {
- /**
- * @param args
- * @throws IOException
- */
- public static void main(String[] args) throws IOException {
- // TODO Auto-generated method stub
- InetSocketAddress isa = new InetSocketAddress("10.140.86.98",5858);
- ServerSocket server = new ServerSocket();
- server.bind(isa);
- System.out.println("isBound: " + server.isBound());
- System.out.println("SocketAddress: " + server.getLocalSocketAddress());
- new Thread(new WorkingServer(server)).start();
- while(true){
- Socket client = server.accept();
- System.out.println("this main thread");
- InputStream in = client.getInputStream();
- InputStreamReader read = new InputStreamReader(new BufferedInputStream(in));
- OutputStream out = client.getOutputStream();
- OutputStreamWriter write = new OutputStreamWriter( new BufferedOutputStream(out));
- write.write("hello");
- write.flush();
- char [] cbuf = new char[100];
- Arrays.fill(cbuf, '/0');
- int len = read.read(cbuf, 0, 100);
- StringBuilder sb = new StringBuilder(100);
- sb.append(cbuf, 0, len);
- System.out.println(sb.toString());
- read.close();
- client.close();
- write.close();
- }
- }
- }
- package com.network;
- import java.io.BufferedInputStream;
- import java.io.BufferedOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.io.OutputStream;
- import java.io.OutputStreamWriter;
- import java.net.ServerSocket;
- import java.net.Socket;
- import java.util.Arrays;
- public class WorkingServer implements Runnable {
- private ServerSocket server;
- WorkingServer(ServerSocket s){
- server = s;
- }
- void communicat( Socket client) throws IOException{
- System.out.println("this sub thread: " + Thread.currentThread().getId());
- InputStream in = client.getInputStream();
- InputStreamReader read = new InputStreamReader(new BufferedInputStream(in));
- OutputStream out = client.getOutputStream();
- OutputStreamWriter write = new OutputStreamWriter( new BufferedOutputStream(out));
- write.write("hello");
- write.flush();
- char [] cbuf = new char[100];
- Arrays.fill(cbuf, '/0');
- int len = read.read(cbuf, 0, 100);
- StringBuilder sb = new StringBuilder(100);
- sb.append(cbuf, 0, len);
- System.out.println(sb.toString());
- read.close();
- // /client.close();
- write.close();
- }
- @Override
- public void run() {
- // TODO Auto-generated method stub
- System.out.println(Thread.currentThread());
- while(true){
- try {
- Socket client = server.accept();
- Thread.sleep(5000);
- communicat(client);
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (InterruptedException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
- }
- package com.network;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.net.Socket;
- import java.net.UnknownHostException;
- public class ClientSock {
- /**
- * @param args
- * @throws IOException
- * @throws UnknownHostException
- */
- public static void main(String[] args) throws UnknownHostException, IOException {
- // TODO Auto-generated method stub
- Socket s = new Socket("10.140.86.98", 5858);
- System.out.println( "remote socket " + s.getRemoteSocketAddress());
- InputStream in = s.getInputStream();
- InputStreamReader reader = new InputStreamReader(in);
- char [] cbuf = new char[100];
- int len = reader.read(cbuf);
- StringBuilder sb = new StringBuilder(100);
- sb.append(cbuf, 0, len);
- System.out.println(sb.toString());
- OutputStreamWriter writer = new OutputStreamWriter(s.getOutputStream());
- writer.write("from client");
- writer.close();
- reader.close();
- s.close();
- }
- }
java tcp socket实例的更多相关文章
- Java中使用Socket连接判断Inputstream结束,java tcp socket服务端,python tcp socket客户端
最近在试着用java写一个socket的服务器,用python写一个socket的客户端来完成二者之间的通信,但是发现存在一个问题,服务器方面就卡在读取inputsream的地方不动了,导致后面的代码 ...
- JAVA TCP Socket
服务器端 package com.Pong.tcpip; import java.io.BufferedReader; import java.io.IOException; import jav ...
- java nio socket实例
Server端代码: public class NioServer { //通道管理器 private Selector selector; //获取一个ServerSocket通道,并初始化通道 p ...
- java之TCP(Socket,serverSocket)实例
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...
- JAVA 通过 Socket 实现 TCP 编程
简介 TCP简介 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由IETF的RFC 793定义.在简化的计算机 ...
- 【Java TCP/IP Socket】基于线程池的TCP服务器(含代码)
了解线程池 在http://blog.csdn.net/ns_code/article/details/14105457(读书笔记一:TCP Socket)这篇博文中,服务器端采用的实现方式是:一个客 ...
- 【Java TCP/IP Socket】TCP Socket(含代码)
TCP的Java支持 协议相当于相互通信的程序间达成的一种约定,它规定了分组报文的结构.交换方式.包含的意义以及怎样对报文所包含的信息进行解析,TCP/IP协议族有IP协议.TCP协议和UDP协议.现 ...
- Flex通信-与Java实现Socket通信实例
Flex通信-与Java实现Socket通信实例 转自:http://blessht.iteye.com/blog/1136888 博客分类: Flex 环境准备 [服务器端] JDK1.6,“ja ...
- 《Java TCP/IP Socket 编程 》读书笔记之十一:深入剖析socket——TCP套接字的生命周期
转载请注明出处:http://blog.csdn.net/ns_code/article/details/16113083 建立TCP连接 新的Socket实例创建后,就立即能用于发送和接收 ...
随机推荐
- Delphi for Android (aka Delphi XE5 aka RAD Studio XE5) has appeared
Delphi for Android (aka Delphi XE5 aka RAD Studio XE5) has appeared Blimey, that took me by surpri ...
- mac 电脑学习笔记 -
新买了个mac mini,第一次用mac,有点linux基础,借此机会记录一下自己的学习过程. 1.个人设置文件 .profile export LS_OPTIONS='--color=auto' # ...
- OpenCV获取RTSP解码播放
#include <opencv2/opencv.hpp> int main(int argc, char **argv){ IplImage *pFrame = NULL, *srcIm ...
- ResNet网络结构
MSRA(微软亚洲研究院)何凯明团队的深度残差网络(Deep Residual Network)在2015年的ImageNet上取得冠军,该网络简称为ResNet(由算法Residual命名),层数达 ...
- Python解析excel文件并存入sqlite数据库
最近由于工作上的需求 需要使用Python解析excel文件并存入sqlite 就此做个总结 功能:1.数据库设计 建立数据库2.Python解析excel文件3.Python读取文件名并解析4.将解 ...
- 怎么把openrety 里边的 table 优雅的打印出来
1.安装 loarocks 库以后 2.安装 Penlight 插件 3.如下图所示 4.利用dump 函数优雅的打印 table
- SGU 507 Treediff
这个题目 其实可以暴力 用两个 set 合并: 每次放进去一个元素只要找到这个元素第一个比他大的元素和最后一个比他小的元素:然后更新最优值: 证明为什么不会超时: 假如最后集合的小的为 S1,大 ...
- js的搜索框
第一种 单独一个form表单提交 <div class="hc-prm-search search flr"> <form action="/user ...
- 【spring源码学习】spring的远程调用实现源码分析
[一]spring的远程调用提供的基础类 (1)org.springframework.remoting.support.RemotingSupport ===>spring提供实现的远程调用客 ...
- SMMS 2016 啟用深色主題
1.用文本類編輯器 打開C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn\ManagementStudio目錄下的 ssms.pkg ...