- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1.5 用Java 编写客户/服务器程序 在Java中,有三种套接字类:.Socket、.ServerSocket和DatagramSocket。其中Socket和ServerSocket类建立在TCP协议基础上,DatagramSocket 类建立在UDP协议基础上。 传输层向应用层提供了套接字Socket 接口,Socket 封装了下层的数据传输细节,应用层的程序通过Socket来建立与远程主机的连接以及进行数据传输。 1.5.1 创建EchoServer 1.5.1 创建EchoServer 服务器程序通过一直监听端口,来接收客户程序的连接请求。在服务器程序中,需要先创建一个ServerSocket对象,在构造方法中指定监听的端口: ServerSocket server=new ServerSocket(8000); //监听8000端口 ServerSocket的构造方法负责在操作系统中把当前进程注册为服务器进程。服务器程序接下来调用ServerSocket 对象的accept()方法,该方法一直监听端口,等待客户的连接请求,如果接收到一个连接请求,accept()方法就会返回一个Socket 对象,这个Socket对象与客户端的Socket对象形成了一条通信线路: Socket socket=server.accept(); //等待客户的连接请求 1.5.1 创建EchoServer Socket 类提供了getInputStream()方法和getOutputStream()方法,分别返回输入流InputStream 对象和输出流OutputStream 对象。程序只需向输出流写数据,就能向对方发送数据;只需从输入流读数据,就能接收来自对方的数据。 与普通I/O流一样,Socket 的输入流和输出流也可以用过滤流来装饰。在以下代码中,先获得输出流,然后用PrintWriter 装饰它,PrintWriter 的println()方法能够写一行数据;以下代码接着获得输入流,然后用BufferedReader 装饰它,BufferedReader 的readLine()方法能够读入一行数据: OutputStream socketOut = socket.getOutputStream(); //参数true 表示每写一行,PrintWriter缓存就自动溢出,把数据写到目的地 PrintWriter pw=new PrintWriter(socketOut,true); InputStream socketIn = socket.getInputStream(); BufferedReader br=new BufferedReader(new InputStreamReader(socketIn)); 1.5.1 创建EchoServer 例程1-2 EchoServer.java import java.io.*; import .*; public class EchoServer { private int port=8000; private ServerSocket serverSocket; public EchoServer() throws IOException { serverSocket = new ServerSocket(port); System.out.println(服务器启动); } public String echo(String msg) { return echo: + msg; } private PrintWriter getWriter(Socket socket)throws IOException{ OutputStream socketOut = socket.getOutputStream(); 1.5.1 创建EchoServer return new PrintWriter(socketOut,true); } private BufferedReader getReader(Socket socket)throws IOException{ InputStream socketIn = socket.getInputStream(); return new BufferedReader(new Input
您可能关注的文档
- 中国经济史第十三章计划体制下的国民经济教程.ppt
- 中国经济现状与前景教程.ppt
- 中国经济形势和展望教程.ppt
- 硬盘知识详细介绍教程.ppt
- 硬盘主要知识点介绍教程.ppt
- 农药残留与试卷.ppt
- 农药残留检测技术()试卷.ppt
- 硬塑成都粘土高压旋喷桩施工方法教程.ppt
- 硬脂酸镁标准操作规程教程.doc
- 中国居民膳食指南2015教程.ppt
- 2024-2025学年度粮油食品检验人员试卷附参考答案详解(黄金题型).docx
- 2024-2025学年度粮油食品检验人员能力提升B卷题库参考答案详解.docx
- 2024-2025学年度粮油食品检验人员自我提分评估【综合卷】附答案详解.docx
- 2024-2025学年度粮油食品检验人员自我提分评估及参考答案详解一套.docx
- 2024-2025学年度粮油食品检验人员考试黑钻押题(研优卷)附答案详解.docx
- 2024-2025学年度粮油食品检验人员能力提升B卷题库含完整答案详解【各地真题】.docx
- 酒店客房地毯清洗施工措施.docx
- 2024-2025学年度粮油食品检验人员能力提升B卷题库含完整答案详解【各地真题】.docx
- 2024-2025学年度粮油食品检验人员考试黑钻押题附答案详解【典型题】.docx
- 2024-2025学年度粮油食品检验人员考试黑钻押题带答案详解(达标题).docx
最近下载
- 纪委监委纪检监察室2024年工作总结及2025年工作计划范文.docx VIP
- T_SBIAORG 001-2023 间充质干细胞外泌体质量控制标准.pdf
- 仓储装卸搬运费合同范本.docx VIP
- 2025年 (第一季度)专题党课讲稿2篇:强作风建设锤炼过硬能力与基层治理专题党课讲稿.pdf VIP
- 民宿项目详细风险分析及评估报告.docx
- 加入我们拯救生命”无偿献血知识竞赛题库及答案.pdf VIP
- Day3_阿宝姐百万年薪公开课_vF5D.pdf VIP
- 提高住院患者腕带佩戴率.pptx
- 前瞻产业研究院:2024年中国中式养生水行业发展趋势洞察报告.pdf
- 幼儿园大班健康《我是健康小卫士》课件.pptx VIP
文档评论(0)