第十三天 网络编程

第十三天 网络编程

ID:41033445

大小:740.50 KB

页数:29页

时间:2019-08-14

第十三天 网络编程_第1页
第十三天 网络编程_第2页
第十三天 网络编程_第3页
第十三天 网络编程_第4页
第十三天 网络编程_第5页
资源描述:

《第十三天 网络编程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、第十三天网络编程、设计模式3.1、网络编程(了解)         网络编程指的就是通过网络进行程序数据操作,既然是网络开发,那么一定就分为用户和服务两端,而这两个端的开发实际上就有以下的两种不同的架构(面试题:请解释C/S和B/S的区别?):· C/S(Client/Server):要开发两套程序,一套是服务器端,另外一套是与之对应的客户端,但是这种程序在日后进行维护的时候,是需要维护两套程序,而且客户端的程序更新也必须及时,此类程序安全;· B/S(Browser/Server):要开发一套程序,只开发服务器端的,客户端使用浏览器进行访问,这种程序在日后进行

2、程序维护的时候只需要维护服务器端即可,客户端不需要做任何的修改,此类程序使用公共端口,包括公共协议,所以安全性很差。         如果从网络的开发而言,大的分类是以上的两类,可是从现在的开发来讲,更多的情况是针对于B/S程序进行的开发,或者可以这么理解:B/S程序的开发属于网络时代,而C/S程序的开发属于单机时代。而对于WebService的开发,实话而言,也属于B/S结构的程序(跨平台)。         而在日后学习Android开发的时候,如果要考虑安全性使用Socket,如果要考虑方便性,还是基于WEB的开发方便使用。而对于网络的开发在Java中也分

3、为两种:TCP(传输控制协议,可靠的传输)、UDP(数据报协议),对于网络开发,本次只专注于TCP程序的实现。3.2、网络程序的基本实现(了解)         如果要进行网络程序的开发,那么首先应该开发出的就是服务器端,本次的操作使用服务器端向客户端输出一个“HelloWorld.”的字符串信息,而如果要想完成服务器端的开发,则需要java.net包中的两个类:                  · ServerSocket类:是一个封装支持TCP协议的操作类,主要工作在服务器端,用于接收客户端请求;                   · Socket类:也

4、是一个封装了TCP协议的操作类,每一个Socket对象都表示一个客户端。         而现在必须观察这两个类之中的操作方法:                   · ServerSocket类的方法:No.方法名称类型描述1publicServerSocket(intport)throwsIOException构造开辟一个指定的端口监听,一般使用5000以上2publicSocketaccept()throwsIOException普通服务器端接收客户端请求,通过Socket返回3publicvoidclose()throwsIOException普通关闭服

5、务器端                   · Socket类的方法:No.方法名称类型描述1publicSocket(Stringhost,intport)throwsUnknownHostException,IOException构造指定要连接的主机(IP地址)和端口2publicOutputStreamgetOutputStream()throwsIOException普通取得指定客户端的输出对象,使用的时候肯定使用PrintStream装饰操作3publicInputStreamgetInputStream()throwsIOException普通从指定

6、的客户端读取数据,使用Scanner操作范例:完成一个服务器端程序代码package cn.mldn.netdemo;import java.io.PrintStream;import java.net.ServerSocket;import java.net.Socket;public class HelloServer{    public static void main(String[]args) throws Exception{        ServerSocketserver= new ServerSocket(9999); // 在9999端口

7、监听        System.out.println("服务开始启动...");        Socketclient=server.accept(); // 接收客户端连接,进入到阻塞状态        PrintStreamout= new PrintStream(client.getOutputStream());        out.println("HelloWorld."); // 向客户端输出        out.close(); // 输出流的关闭        client.close(); // 关闭客户端        serve

8、r.close(); /

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。