关键词:
参考技术A使用ServletSocket创建TCP服务器端
从图 中看上去TCP通信的两个通信实体之间并没有服务器端 客户端之分 但那是两个通信实体已经建立虚拟链路之后的示意图 在两个通信实体没有建立虚拟链路之前 必须有一个通信实体先做出 主动姿态 主动接收来自其他通信实体的连接请求
Java中能接受其他通信实体连接请求的类是ServerSocket ServerSocket对象用于监听来自客户端的Socket连接 如果没有连接 它将一直处于等待状态 ServerSocket包含一个监听来自客户端连接请求的方法
Socket accept() 如果接收到一个客户端Socket的连接请求 该方法将返回一个与客户端Socket对应的Socket(如图 所示每个TCP连接有两个Socket) 否则该方法将一直处于等待状态 线程也被阻塞
为了创建ServerSocket对象 ServerSocket类提供了如下几个构造器
ServerSocket(int port) 用指定的端口port来创建一个ServerSocket 该端口应该是有一个有效的端口整数值 ~
ServerSocket(int port int backlog) 增加一个用来改变连接队列长度的参数backlog
ServerSocket(int port int backlog InetAddress localAddr) 在机器存在多个 IP地址的情况下 允许通过localAddr这个参数来指定将ServerSocket绑定到指定的IP地址
当ServerSocket使用完毕 应使用ServerSocket的close()方法来关闭该ServerSocket 通常情况下 服务器不应该只接受一个客户端请求 而应该不断地接受来自客户端的所有请求 所以Java程序通常会通过循环 不断地调用ServerSocket的accept()方法 如下代码片段所示
//创建一个ServerSocket 用于监听客户端Socket的连接请求
ServerSocket ss = new ServerSocket( )
//采用循环不断接受来自客户端的请求
while (true)
//每当接受到客户端Socket的请求 服务器端也对应产生一个Socket
Socket s = ss accept()
//下面就可以使用Socket进行通信了
…
上面程序中创建ServerSocket没有指定IP地址 则该ServerSocket将会绑定到本机默认的IP地址 程序中使用 作为该ServerSocket的端口号 通常推荐使用 以上的端口 主要是为了避免与其他应用程序的通用端口冲突
返回目录 疯狂Java讲义
编辑推荐
Java程序性能优化 让你的Java程序更快 更稳定
新手学Java 编程
lishixinzhi/Article/program/Java/hx/201311/27266
《疯狂java讲义》2-理解面向对象
总结1、结构化程序设计 按功能来分析系统需求:自顶向下,逐步求精,模块化等 结构化分析(StructuredAnalysis)->结构化设计(SD)->结构化编程(SP) 面向功能,面向数据流,最小单元是函数 三种基本结构:... 查看详情
疯狂java讲义-读书笔记1.5第一个java程序
1.5.1编辑Java源代码使用任何无格式的文本编辑器 1.5.2编译Java程序编译命令:javac-ddestdirsrcFile一个源文件里定义了多个类,将编译生成多个字节码文件。配置SublimeText3环境 http://blog.csdn.net/wolinxuebin/article/details/41049551#&n... 查看详情
学在前面——《疯狂java讲义》学习笔记
...的~~ 于是看了各种JAVA从入门到精通的帖子,选中了《疯狂JAVA讲义》这本书,尽管书有点老了,但是感觉 查看详情
《疯狂java讲义》4-流程控制与数组
总结1、流程控制 和C++类似。 switch用的较少,留意一下:Java7后expression还可以是字符串类型。 switch与if不同,起始点非常清晰,故每个case的花括号可以省略。 break不能少,否则一旦匹配则不再判断之后,都会输出... 查看详情
java开发实战!java编程思想和java疯狂讲义
一、不少培训班候选人的简历中,缺乏足够的商业项目年限不少同学会有这样得感受:投出去不少简历,但就没有面试机会,对培训班出身的朋友来说,可能这种情况更甚,原因是,这些简历没过筛选... 查看详情
疯狂创客圈java死磕系列总目录
无编程不创客,无案例不学习。疯狂创客圈,一大波高手正在交流、学习中!疯狂创客圈Java死磕系列:【CSDN总入口】【博客园总入口】JAVANIO 死磕系列:NIO简介、NIO Buffer、NIOchannel、NIOSelectorreactor模式死磕系列:Reactor模式... 查看详情
delphi数据库疯狂讲义001
大家喜欢的加我QQ271118321 查看详情
读《疯狂ajax讲义》重点
1.XMLHttpRequest()请求的写法(p62) 一个类XMLHttp因该包含的接口:[1] XMLHttp.sendRequest("POST",URL,data,callback); [2]XMLHttp.sendRequestComp("POST",URL,data,callback);[3]XMLHttp.sendRequestAjax("POST",URL, 查看详情
《小强软件测试疯狂讲义-性能及自动化》一书正式发布
...com,京东,当当,天猫等网店购买,搜索“小强软件测试疯狂讲义”关键字即可查找并购买了哦! 出版社官方天猫购买地址(推荐):https://detail.tmall.com/item.htm?id=547310727717当当购买地址:http://product.dangdang.com/24239858.htm 查看详情
《疯狂workflow讲义(activiti6.x)》教学视频
大家好,工作流引擎Activiti6的教学视频目前正在录制中,大部分视频会免费提供,大家可以关注我的公众号获取,更新进度请留意公众号信息。 视频目录: ... 查看详情
疯狂workflow讲义——基于activiti的工作流应用开pdf下载
《疯狂Workflow讲义——基于Activiti的工作流应用开》一:文档获取下载方式:1:花20CSDN积分:可以下载:http://download.csdn.net/download/ytfrdfiw/97898162:脚本之家:http://www.jb51.net/books/532614.html3:申请加入此QQ群即可获取下载 &nb... 查看详情
小强软件测试疯狂讲义-性能及自动化
乌拉拉~4月1日左右应该就可以在各大网上书店购买到了哦,小伙伴在等等,现在放出高清无码照~购买地址:暂时没有。。。有了我就放出来650)this.width=650;"src="https://s2.51cto.com/wyfs02/M01/8F/12/wKioL1jTL-3zTfByAANhU-gN2Do406.jpg"title="C-01_conew1... 查看详情
性能测试分层模型-选自书籍:小强软件测试疯狂讲义
百度搜索:小强测试品牌新书推荐本书终于在前段时间出版了,现在已经可以在各大网店购买了,搜索书名即可。书籍购买地址:https://detail.tmall.com/item.htm?id=547310727717这里我特别提前说一句:任何东西都有一定的受众群体,世... 查看详情
性能测试分层模型-选自书籍:小强软件测试疯狂讲义
新书推荐本书终于在前段时间出版了,现在已经可以在各大网店购买了,搜索书名即可。书籍购买地址:https://detail.tmall.com/item.htm?id=547310727717这里我特别提前说一句:任何东西都有一定的受众群体,世界上也没有任何东西可以... 查看详情
android开发的学习路线大概是怎样的?
...频就行,他讲的特别好,尤其是堆栈内存那一块。然后学疯狂java讲义,不需要都学,学前十章就行,不建议初学者学java编程思想,比较难懂,不适合入门。(时间2-3个月)第二步:书籍 入手的第一本书就是android疯狂讲... 查看详情
疯狂讲义activiti6.x工作流进阶与项目实战,activiti整合drools
01Activiti介绍与搭建开发环境 02运行官方例子03编写第一个Activiti程序 04流程引擎配置与服务组件05Activiti数据库介绍06API(1)Activiti数据查询07API(2)流程文件部署08API(3)流程定义09API(4)任务操作10API(5)任务参数与附... 查看详情
第100次提醒:++不是线程安全的(代码片段)
...:并发的自增运算++运算的原理Java的原子操作类写在最后疯狂创客圈Java死磕系列疯狂创客圈Java分布式聊天室【亿级流量】实战系列之-17【博客园总入口】源码IDEA工程获取链接:Java聊天室实战源码写在前面?大家好,我是作者尼... 查看详情
feign-http接口调用-单独使用-实战(代码片段)
...申明远程接口的本地代理1.1.3.远程API的本地调用写在最后疯狂创客圈亿级流量高并发IM学习实战疯狂创客圈Java分布式聊天室【亿级流量】实战系列之-26【博客园总入口】写在前面?大家好,我是作者尼恩。目前和几个小伙伴一起... 查看详情