19.网络

1.Socket

Socket是个代表两台机器之间网络连接的对象。

建立Socket连接需要知道两项关于服务的信息:1.IP地址; 2.端口号

端口号:是一个16位宽,用来识别服务器上特定程序的数字,并且0~1023留给已知的特定服务使用。

2.客户端

1.使用BufferedReader从Socket上读取数据

建立对服务器Socket连接

Socket chatSocket = new Socket("127.0.0.1",5000);

建立连接到Socket上底层输入串流的InputStreamReader

InputStreamReader  stream = new InputStreamReader(chatSocket.getInputStream());

建立BufferedReader来读取

BufferReader reader = new BufferedReader(stream);

String message = reader.readLine();

2.用PrintWriter写数据到Socket上

对服务器建立Socket连接

Socket chatSocket = new Socket("127.0.0.1",5000);

建立链接到Socket的PrintWriter

PrinterWriter writer = new PrinterWriter(chatSocket.getOutputStream());

写入数据

writer.println("message to send");

writer.print("another message");

3.服务器程序

服务器应用程序用到一对Scoket,客户端与服务器通过socket来沟通。

一个是等待用户请求的ServerScoket,是在指定端口上的,服务器应用程序开始监听来自4242端口的客户端请求

ServerSocket serverSock = new ServerSocket(4242);

服务器创建出与客户端通信的新Socket

Socket sock = serverSock.accept();

accept方法会等待用户Socket连上,返回一个不同端口上的socktet便与和客户端通讯。

来自为知笔记(Wiz)

时间: 2024-08-24 14:21:52

19.网络的相关文章

2018-4-17Linux系统管理(18)(19)网络配置命令及网络配置文件

在前面的章节当中我们讲述了计算网络通信的基础知识,介绍网络的拓扑结构类型及对于Linux来说的网络属性如何进行相关配置,而后有介绍了TCP/IP的协议栈,而这个协议栈是计算机真正使用的协议栈,以分层的概念将复杂问题进行切割,每层都有其相关的协议,都能够独立且相互调用可以协作完成.该协议栈共有四层,分别为物理层.互联网层.传输层及应用层进行组合.而对于底层来讲,作为运维的话我们无需掌握很多,不过我们也必须稍微进行一个了解,比如在互联网层中最为最重要的协议是IP协议,而在传输层中最为重要的协议为TC

19.网络编程

一.介绍 1. 使用基本的socket函数 2. 使用以WSA(Windows Socket API)开头的socket函数,结合了windows平台的特性. 3. MFC的socket类,部分的封装了以WSA开头的socket函数 二.socket库的介绍 vc6.0包含了1.1版本的socket库,xp以上系统自带了2.2版本的socket库 1. 2.2版本库的相关文件: dll文件:ws2_32.dll lib文件:ws2_32.lib 头文件:winsock2.h 2. socket库

第一章 1.19 网络编程基础

一. socket编程 socket又叫套接字 socket编程其实就是用代码来实现进行网络通信的两个端:套接字就是实现通信的两个程序 实现通信的两个端分为 服务器 和 客户端 两种 python通过 socket模块 来提供socket编程相关的类和方法 二. 服务器端 (注:以下操作中服务器端和客户端分两个py文件实现) 1. 创建套接字对象(买电话机) socket(family=AF_INET, type=SOCK_STREAM) family - 设置ip类型; AF_INET对应的是

云计算网络珠玑

<云计算网络珠玑>基本信息作者: 李俊武 出版社:电子工业出版社ISBN:9787121253775上架时间:2015-2-6出版日期:2015 年3月开本:16开页码:275版次:1-1   <云计算网络珠玑>内容简介<云计算网络珠玑>着眼于讲解云计算网络虚拟化中所用到的网络技术原理,重点展示以太网及TCP/IP网络中各种技术内在的关联脉络,包括从传统的MAC.IP.安全和QoS等到新兴的Trill.LISP.DPI和CDN等技术,从以太网交换机的二层转发.三层路由和

web 面试题

JAVAWEB 面试题 1. css和div 开发的优势? 显示和内容实现分离  有利于搜索引擎搜索 有利于维护和程序的扩展 2. 谈谈页面间的参数传递有哪些方式 ? 通过作用域对象session.request 的setAttribute()和getAttribute()方法进行参数传递. <jsp:forward> <jsp:param name= value=></jsp:forward> request.gerRequestDispatcher("1.

C++面试集锦( 面试被问到的问题 )

1. C 和 C++ 区别      2. const 有什么用途     主要有三点: 1:定义只读变量,即常量 2:修饰函数的参数和函数的返回值 3: 修饰函数的定义体,这里的函数为类的成员函数,被const修饰的成员函数代表不修改成员变量的值   3. 指针和引用的区别     1:引用是变量的一个别名,内部实现是只读指针 2:引用只能在初始化时被赋值,其他时候值不能被改变,指针的值可以在任何时候被改变 3:引用不能为NULL,指针可以为NULL 4:引用变量内存单元保存的是被引用变量的地

Ubuntu系统常见问题整理(Part 1)

大约是在2008年的时候开始接触Ubuntu系统,一开始被它吸引是因为它各种神奇的桌面特效.然后一直使用到现在,现在将使用中遇到的各种小问题的解决办法整理出来.希望对刚接触但同样爱好Ubuntu的朋友们有所帮助. 1 密码恢复 2 QQ掉线 3 开机自动挂载硬盘分区 4 修改软件源 5 软件相关 6 防火墙 7 设置IP 8 远程桌面 9 没有声音 10 rhythmbox 乱码 11 flash中中文方块乱码 12 备份还原系统 13 ***多余内核文件 14 防止别人ping 15 PDF文

atitit.企业管理----商业间谍策略的使用与防务

1. 间谍的历史 2 1.1. 公元前10世纪,<旧约全书>中的<士师记>里讲述了参孙的故事是最早的间谍故事. 2 1.2. 蒙古人是第一个把间谍提升到组织利益高度的民族. 3 1.3. 情报立国 3 1.4. 间谍的作用 3 2. 商业间谍的分类 3 2.1. 公开的商业间谍 3 2.2. <孙子兵法>中把间谍分为"五间": 4 2.3. 间谍分为俩种,一种手法派,一种道具派.. 4 3. 间谍活动的原则 4 3.1. 斗而不破,网开一面..我们的

一个强大的UI node 抽象

基于cocos2d -x的一个强大的 界面对象的基类 1 ---@type uinode ui 对象的抽象 2 --@usage 3 -- 界面打开的执行流程 4 -- 带*的是可选重写的函数,不带*的为必须实现的 5 -- [定义一个对象] 6 -- test = {} 7 -- -------------------------------------------- 8 -- ---配置函数 9 -- [返回CCBI的名字] 10 -- function test:getBindUINode